如何解决'TreeQuerySet' 对象没有属性 'name'
我在将“TreeQuerySet”对象转换为 QuerySet 对象时遇到问题
这是我在使用 DRF 进行序列化时遇到的错误
尝试获取序列化程序 SubCategoriesSerializer 上的字段名称值时出现 AttributeError。 序列化器字段可能命名不正确,并且与 TreeQuerySet 实例上的任何属性或键都不匹配。 原始异常文本为:
'TreeQuerySet' 对象没有属性 'name'。
序列化器
class SubCategorySerializer(serializers.ModelSerializer):
class Meta:
model = Category
fields = ('id','name','slug','views','title','description','avatar','color'
)
API 视图
category = Category.objects.get(pk=1)
categories = category.get_children()
categories_serializer = SubCategorySerializer(categories,context={'request': request})
解决方法
TreeQuerySet
实际上是 QuerySet
categories = category.get_children()
返回多个 Category
对象,但您尝试序列化单个实例,而您应该在序列化器 QuerySet
many=true
>
categories_serializer = SubCategorySerializer(categories,many=true,context={'request': request})
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。