我的目标与 this question 中提出的问题非常相似。但从 DRF 的角度来看,而不是形式。
所以基本上问题是,如何在以下代码片段中获取新创建的对象:
TestSerializer(serializers.ModelSerializer)
class Meta:
fields = '__all__'
model = TestModel
class TestView(generics.CreateAPIView):
serializer_class = TestSerializer
def create(self, request, *args, **kwargs):
response = super(TestView, self).create(request, *args, **kwargs)
created_model_instance = .... ?
print(created_model_instance.id)
return response
最佳答案
您可以覆盖 perform_create
并使用 serializer.save
获取创建的对象,例如:
class TestView(generics.CreateAPIView):
serializer_class = TestSerializer
def perform_create(self, serializer):
"""Some doc here!"""
obj = serializer.save()
print(obj.id)
关于django-rest-framework - DRF - 如何在 CreateAPIView 中获取创建的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61253220/