我有一个用于更新对象的api。但更新表单显示空字段。如何显示填写当前值的表单?如果我想显示只填充django的当前值,我会做formname(instance = object)。使用RetrieveAPIView时,如何在DRF中执行类似操作。
class RestaurantUpdateAPI(RetrieveAPIView):
queryset = Restaurant.objects.all()
serializer_class = RestaurantCreateUpdateSerializer
def perform_update(self, serializer):
print('serializer',serializer)
instance = serializer.save()
# send_email_confirmation(user=self.request.user, modified=instance)
这段代码给了我空的表格。我想名字字段应该有餐馆名称,城市应该有城市名称等等。
如何在DRF RetrieveAPIView中完成?
答案 0 :(得分:0)
你的api url是../ edit / ...,所以我想你想用这个api编辑你的餐馆。(顺便说一句,REST API不应该使用"编辑"在其中,你只是使用http方法来处理这个)。在你的情况下,如果你想同时使用get方法和post方法。你应该使用RetrieveUpdateDestroyAPIView
用于读写删除端点以表示单个模型实例。
提供get,put,patch和delete方法处理程序。
扩展:GenericAPIView,RetrieveModelMixin,UpdateModelMixin,DestroyModelMixin