我已经覆盖了我的一个模型的 .save() 方法以使用额外的参数。我的问题是:如何通过 serializer.save() 传递此参数。我的代码如下:
class DeliveryCreate(generics.CreateAPIView):
queryset = Delivery.objects.none()
serializer_class = DeliverySerializer
permission_classes = (permissions.DjangoModelPermissions, )
def perform_create(self, serializer):
serializer.save(permissions=(self.request.user,) ) #here, how to I do it?
在正常 View 中,我是这样做的:self.object.save(owner=self.request.user)
我试过:serializer.save(permissions=(self.request.user,),owner=self.request.user )
但它不起作用
感谢您的帮助
最佳答案
根据docs serializer.save(owner=self.request.user)
应该足够了。当在序列化程序上调用 .create()
或 .update()
时,关键字参数将包含在 validated_data 参数中。如果您按照 Rahul Gupta 的建议发布了您获得的回溯和您的模型/序列化程序代码,这将会有所帮助。
关于python - Django Rest Framework - 如何将 kwargs 传递给 model.save()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37813554/