Python 向JSON响应中添加多对多关系的所有id的列表
我想将多对多关系的所有id添加到序列化JSON响应中Python 向JSON响应中添加多对多关系的所有id的列表,python,json,django,django-rest-framework,django-orm,Python,Json,Django,Django Rest Framework,Django Orm,我想将多对多关系的所有id添加到序列化JSON响应中 class TestField(serializers.Field): def to_native(self, value): list = [] for boss in value.all(): list.append(value).append(';') return list class EmployeeSerializer(serializers.Hyperlin
class TestField(serializers.Field):
def to_native(self, value):
list = []
for boss in value.all():
list.append(value).append(';')
return list
class EmployeeSerializer(serializers.HyperlinkedModelSerializer):
test = TestField('test')
class Meta:
model = Employee
fields = ('id', 'test', 'bosses')
depth = 1
因此,我想要实现的是:我想让员工的所有
的
在响应中,以及他们所有
-s的附加列表,用分隔代码>
我已经尝试使用我创建的自定义文件,但由于某些原因,我一直得到以下错误
属性错误at/员工/
“Employee
”对象没有属性“test
”
这个错误意味着什么?我如何修复我的代码以给我一个id列表?-s?Django REST框架,它允许您将关系序列化为主键列表,这听起来与您正在寻找的一模一样
class EmployeeSerializer(serializers.HyperlinkedModelSerializer):
test = serializers.PrimaryKeyRelatedField(
read_only=True,
many=True,
source='relation'
)
class Meta:
model = Employee
fields = ('id', 'test', 'bosses')
depth = 1
这将主键列表序列化为test
。主键与employee.relation.all()
(因为)返回的对象的主键相同。能否包含要序列化的模型(带有M2M)?