请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

如何将外键里的字典字段解构到外层

class CategorySerializers(serializers.ModelSerializer):
    class Meta:
        model = Category
        exclude = ('desc','add_time','update_time')


class ArticleListSerializers(serializers.ModelSerializer):
    category_type = CategorySerializers()
    update_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M:%S')

    class Meta:
        model = Article
        fields = "__all__"

图片描述

直接显示 category_type: ‘动漫’,而不是字典对象

正在回答 回答被采纳积分+3

1回答

bobby 2022-04-17 12:37:00

自己在给serializer设置一个category字段,然后自己从category_type的某个值取出来赋值给category

0 回复 有任何疑惑可以回复我~
  • 提问者 野火燎原 #1
    Got AttributeError when attempting to get a value for field `category` on serializer `ArticleListSerializers`.
    The serializer field might be named incorrectly and not match any attribute or key on the `Article` instance.
    Original exception text was: 'Article' object has no attribute 'category'.
    
    报错说新增的category字段不在article对象中,能否给代码
    回复 有任何疑惑可以回复我~ 2022-04-18 15:52:42
  • bobby 回复 提问者 野火燎原 #2
    你的代码是如何写的?截图我看看
    回复 有任何疑惑可以回复我~ 2022-04-21 13:20:43
  • 提问者 野火燎原 回复 bobby #3
    class CategorySerializers(serializers.ModelSerializer):
        class Meta:
            model = Category
            fields = ("name",)
    
    
    class ArticleListSerializers(serializers.ModelSerializer):
        category = CategorySerializers()
        update_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M:%S')
    
        class Meta:
            model = Article
            fields = "__all__"
    回复 有任何疑惑可以回复我~ 2022-04-22 02:16:58
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信