你好!我有一个形式的序列化程序:
class MySerializer(ModelSerializer):
class Meta:
model = MyModel
fields = ('address',)
有一个视图集:
class MyViewSet(GenericViewSet, CreateModelMixin, ListModelMixin):
http_method_names = ['post']
queryset = MyModel.objects
serializer_class = MySerializer
请告诉我,当接收到 POST 请求时,是否有可能以某种方式更改数据库中的任何现有行?也就是说,没有实际调用 MyViewSet().create() 方法。
您可以覆盖 ViewSet 中的 def perform_create(self, serializer) 方法。此方法最初调用 serializer.save() 方法。通过覆盖 perform_create,我们简单地不调用 save(),而只是简单地 update() 模型