猿问

获取嵌套模型中的完整字段。Django 休息框架

我有 2 个模型类:


class CustomUser(AbstractUser):


    username = models.CharField(max_length=30, unique=True)


    tags = models.ManyToManyField('events.Tag', related_name='user_tag', blank=True)


class Tag(models.Model):

    name = models.CharField(unique=True, max_length=50)

和序列化器:


class UserSerializer(serializers.ModelSerializer):

    tags = TagSerializer(many=True)

    class Meta:

         ...


class TagSerializer(serializers.ModelSerializer):

    class Meta:

        lookup_field = 'name'

        model = Tag

        fields = ('id', 'name')

当我执行 get 查询时,我得到如下信息:


 "data": {

    "type": "CustomUser",

    "id": "6",

    "attributes": {

        "username": "mercer",

    },

    "relationships": {

        "tags": {

            "data": [

                {

                    "type": "Tag",

                    "id": "1"

                }

            ]

        },


    }

}

我想要的是在用户表示中获取 Tag 'name' 字段:


"type": "Tag",

"id": "1",

"name":"name"

我想进行补丁查询以向用户添加标签。


我可以使用SerializerMethodField(),但这样我将无法添加标签


慕虎7371278
浏览 146回答 1
1回答

RISEBY

问题在于休息框架的设置。我在那里编写了自定义 json 渲染类并收到了这种形式的输出。现在我删除了它,一切都很好。
随时随地看视频慕课网APP

相关分类

Python
我要回答