Объект типа ListSerializer не является сериализуемым в формате JSON.Python

Программы на Python
Anonymous
Объект типа ListSerializer не является сериализуемым в формате JSON.

Сообщение Anonymous »

Я хочу сериализовать модель Django и показать ее как ответ DRF, и я много раз сталкиваюсь с этой ошибкой
вот мое представление API:

Код: Выделить всё

class ListCommentsApiView(APIView):
authentication_classes = [authentication.TokenAuthentication]
permission_classes = [permissions.AllowAny]

def get(self, request: HttpRequest) -> Response:
comments = Comment.objects.all()
serialized_comments = CommentModelSerializer(instance=comments, many=True)

return Response(serialized_comments)
вот моя модель:

Код: Выделить всё

class Comment(models.Model):
RATES: list[tuple[int, str]] = [
(1, 'Worst'),
(2, 'Meh'),
(3, 'Best'),
]

user = models.ForeignKey(to=User, default=None, blank=True, on_delete=models.CASCADE ,verbose_name='User')
text = models.TextField(max_length=200, default=None, blank=True, verbose_name='Comment')
rate = models.IntegerField(choices=RATES, default=None, blank=True, verbose_name='Rate')
viewed_by_admin = models.BooleanField(default=False, blank=True, verbose_name='Viewed By Admin')
created_at = models.DateTimeField(auto_now_add=True, verbose_name='Created at')
updated_at = models.DateTimeField(auto_now=True, verbose_name='Updated at')

def __str__(self) -> str:
return str(self.user)

class Meta:
verbose_name = 'Comment'
verbose_name_plural = 'Comments'
вот мой сериализатор:

Код: Выделить всё

from rest_framework import serializers

from comment.models import Comment

class CommentModelSerializer(serializers.ModelSerializer):
class Meta:
model = Comment
fields = ['text', 'rate']
Я пробовал много вещей, но это не сработало, и я не знаю, что делать, и был бы признателен за небольшую помощь

Подробнее здесь: https://stackoverflow.com/questions/789 ... rializable

Вернуться в «Python»