首页 > 解决方案 > 在 DRF 中显示空格(generics.ListCreateAPIView)

问题描述

我正在尝试通过 API 从表中获取所有记录。输出所需的数量,但它是空的。我该如何解决?

模型.py

class Author(models.Model):
    name = models.CharField(max_length=255)

    def __str__(self):
        return self.name

视图.py

class AuthorList(generics.ListCreateAPIView):
   queryset = Author.objects.all()
   model = Author
   serializer_class = AuthorSerializer

序列化程序.py

class AuthorSerializer(serializers.Serializer):
    class Meta:
        model = Author
        fields = ('name',)

在此处输入图像描述

正如您在图像中看到的,我有两个对象,但输出的是一个空的 json。

PS:在控制台中,我可以看到带有数据的 QuerySet:<QuerySet [test, Pavel]>

标签: django-rest-framework

解决方案


@Fyzzy good 的答案或者更好的是,使用 aModelSerializer而不是 aSerializer因为它会自动捕获模型的字段而不是序列化程序中的显式定义。从您在序列化程序的 Meta 类中的内容来看,使用似乎ModelSerializer是您的想法。


推荐阅读