Отправка информации с помощью метода post в фреймворке rest

Я хочу добавить новый комментарий с помощью метода post, но он выдает ошибку

{'non_field_errors': [ErrorDetail(string='Недопустимые данные. Ожидали словарь, а получили ModelBase.', code='invalid')]}

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

from rest_framework import serializers
from .models import Products,ProductsComments


class ProdcutsSerializers(serializers.ModelSerializer):
    colors = serializers.SlugRelatedField(many=True,read_only=True,slug_field='name')
    category = serializers.SlugRelatedField(many=True,read_only=True,slug_field='name')
    sizes = serializers.SlugRelatedField(many=True,read_only=True,slug_field='name')

    class Meta:
        model = Products
        fields = '__all__'




class ProductsCommentsSerializers(serializers.ModelSerializer):
    user = serializers.SlugRelatedField(many=True,read_only=True,slug_field='id')
    product = serializers.SlugRelatedField(many=True,read_only=True,slug_field='id')
    class Meta:
        model = ProductsComments
        fields = '__all__'

Просмотров:

from rest_framework.decorators import api_view,permission_classes
from rest_framework.response import Response
from rest_framework import status
from .serializers import *
from .models import *


@api_view(['GET'])
def products_list(request):
    products = Products.objects.all()
    data = ProdcutsSerializers(products,many=True).data
    return Response(data)

@api_view(['GET'])
def products_comments_list(request):
    products_comments = ProductsComments.objects.all()
    data = ProductsCommentsSerializers(products_comments,many=True).data
    return Response(data)

@api_view(['POST'])
def products_comments_add(request):
    data = ProductsCommentsSerializers(data=ProductsComments)
    if data.is_valid():
        print('Ok')
    else:
        print('not')
        #print(data)
        print(data.errors)
        return Response({"M": "not"})
Вернуться на верх