我试图实现我的事件模型与标签对象嵌套它。但标签只有名称字段,我需要两个ID,名称和蛞蝓以及。
这是我的模型看起来像model.py
class Event(models.Model):
title = models.CharField(max_length=151, db_index=True)
description = models.TextField(blank=True, null=True)
tags = TaggableManager()
serializers.py
class EventSerializer(serializers.ModelSerializer):
slug = serializers.SerializerMethodField()
tags = TagListSerializerField()
我得到的结果:
{
"id": 52,
"slug": "52-aperiam-amet",
"tags": [
"hello",
"world"
],
"title": "Aperiam amet",
"description": "Quibusdam ipsum sun Quibusdam ipsum sun Quibusdam ipsum sun ",
},
但预期的标记嵌套应该如下所示
"tags": [
{
id:"1",
slug:'1-hello',
name:"hello"
},
{
id:"2",
slug:'2-world',
name:"world"
},
],
1条答案
按热度按时间bvjxkvbb1#
您可以使用
TagSerializer
:然后使用:
也就是说,
Taggit
的目标是隐藏标记模型,并将其公开为字符串,这可能是django-taggit
的主要任务,并且可能更好,因为公开主键使其更加复杂。