Ошибка набора представлений Django drf-yasg: ошибка атрибута: объект ‘list’ не имеет атрибута ‘items’

#django #django-rest-framework

#django #django-rest-framework

Вопрос:

Я использую ReadOnlyModelViewSet для своего API, и я продолжаю получать ошибку:

Мой набор представлений:

 class CartItemViewSet(viewsets.ReadOnlyModelViewSet):
    """
    ViewSet for Cart functions
    """
    queryset = CartItem.objects.all()
    serializer_class = CartItemSerializer
    permission_classes = [IsAuthenticated]
  

Сериализатор:

 class CartItemSerializer(serializers.ModelSerializer):
    # product = UserSerializer(read_only=True)

    model = CartItem
    fields = ['uuid', 'product', 'quantity', 'cart_item_price']
  

Сообщение об ошибке:

 File "/usr/local/lib/python3.8/site-packages/drf_yasg/inspectors/field.py", line 102, in make_schema_definition
for property_name, child in serializer.fields.items():
AttributeError: 'list' object has no attribute 'items'
  

Ответ №1:

model И fields должны быть внутри вашего Meta класса

 class CartItemSerializer(serializers.ModelSerializer):
    class Meta:
        model = CartItem
        fields = ['uuid', 'product', 'quantity', 'cart_item_price']