Django получает модель из класса сериализатора из вида - PullRequest
2 голосов
/ 21 мая 2019

Я использую 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'

Как получить модель, используемую классом сериализатора в представлении?

1 Ответ

5 голосов
/ 21 мая 2019

ваш синтаксис неверно используется -> = вместо :

class DestroyAccountSerializer(serializers.ModelSerializer):
    class Meta:
        model = User

см. это

...