我有 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(),但这样我将无法添加标签
RISEBY
相关分类