我正在使用 Django 2.x 和 Django REST Framework
我有一个类似的序列化器
class DestroyAccountSerializer(serializers.ModelSerializer):
class Meta:
model: User
并查看
class DeleteAccountView(generics.DestroyAPIView):
serializer_class = DestroyAccountSerializer
permission_classes = (IsAuthenticated,)
def get_object(self):
# return self.get_serializer().Meta.model.objects.get(pk=self.request.user.pk)
return self.request.user
我想使用在序列化程序中定义的视图中定义的模型。我尝试过
self.get_serializer().Meta.model
但这会导致错误
AttributeError: type object 'Meta' has no attribute 'model'
如何在视图中让序列化程序类使用模型?
答案 0 :(得分:5)
您的语法使用错误-> = 插入了:
class DestroyAccountSerializer(serializers.ModelSerializer):
class Meta:
model = User
推荐this
答案 1 :(得分:0)
你可以通过这个语法获取模型类
model = self.serializer_class.Meta.model