私はDjangoとDRFを手に入れようとしていますが、問題があります。レコードの一部を更新するPUTリクエストを作成したいと思います。DRF PUT部分的な返信が返されない
私は現在、以下の部分を持っている -
models.py
class MyUser(models.Model):
# Link to User model instance.
user = models.OneToOneField(User)
first_name = models.CharField(max_length=32, null=True, blank=True)
lastname = models.CharField(max_length=32, null=True, blank=True)
joindate = models.DateTimeField(null=False, blank=False)
def __str__(self):
return self.user.username
からviews.py API /から
class MyUserDetailUpdateView(GenericAPIView, UpdateModelMixin):
queryset = MyUser.objects.all()
serializer_class = MyUserPartialUpdateSerializer
lookup_field = 'user'
def put(self, request, *args, **kwargs):
return self.partial_update(request, *args, **kwargs)
API/serializers.py
class MyUserPartialUpdateSerializer(serializers.ModelSerializer):
class Meta:
model = MyUser
から
投稿者urls.py
url(r'^api/userupdate/(?P<user>[\w]+)/$', apiviews.MyUserDetailUpdateView.as_view(), name='my_user_detail_view_api')
は、テストのために私がhttpieを使用してみてください -
http -v PUT http://127.0.0.1:8000/api/userupdate/johndoe/ first_name="Johnny"
サーバ側が報告している "が見つかりません:/ API/userdate/JOHNDOE /" と返すHTTP 404をクライアントに。
部分的な更新は何が欠けていますか?
おかげ
あなたは、あなたの場合には、そのIDを、URL内の主キーを渡す必要があります。 –