Python 向JSON响应中添加多对多关系的所有id的列表

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

我想将多对多关系的所有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.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)?