Django REST Framework ManyRelatedField的序列化

乙烯基

我正在尝试使用Django Rest框架序列化我的模型-http: //django-rest-framework.org/

我想要的是序列化其中具有ManyToMany关系的模型:

class ImageResource(models.Model):
    # Some code here
    image = models.ImageField(upload_to=upload_images_to)
    keywords = models.ManyToManyField('cards.Keyword', related_name='image_keywords', blank=True);
    # More code here

这就是我的模型(我删除了一些字段以帮助您专注于关键字字段)

我的序列化器如下所示:

class ImageResourceSerializer(serializers.HyperlinkedModelSerializer):
    keywords = serializers.ManyRelatedField(source='keywords')

    class Meta:
        model = ImageResource
        fields = ('id', 'url', 'image', 'keywords')

最后我要展示的是API的结果

{
        "id": 2, 
        "url": "http://127.0.0.1:3004/apiimageresource/2/", 
        "image": "images/1386508612-97_img-02.JPG", 

        "keywords": [
            "birthday", 
            "cake"
        ]
    },

如您所见,关键字从字符串(它们的名称)中以数组形式返回。我希望将它们作为具有ID和值的键值对返回:

"keywords": [
    "1":"birthday",
    "3":"cake"
]

如果您知道如何使用我的序列化器执行此操作,将不胜感激:)

马里奥杰夫

创建自定义序列化器:

class MyKeywordsField(serializers.RelatedField):
    def to_native(self, value):
        return { str(value.pk): value.name }

用它:

class ImageResourceSerializer(serializers.HyperlinkedModelSerializer):
    keywords = MyKeywordsField(many=True)
    # ...

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

翻译序列化 Django Rest Framework

来自分类Dev

Django Rest Framework序列化程序和Django表单

来自分类Dev

Django Rest Framework实例化序列化程序错误

来自分类Dev

Django REST Framework序列化器字段必填= false

来自分类Dev

Django Rest Framework按顺序返回序列化的数据

来自分类Dev

Django Rest Framework序列化器分别渲染表单

来自分类Dev

Django Rest Framework中的序列化器字段筛选?

来自分类Dev

Django Rest Framework上的序列化器导入错误

来自分类Dev

django-rest-framework序列化器to_representation

来自分类Dev

Django REST Framework序列化器字段必填= false

来自分类Dev

Django Rest Framework序列化器丢失数据

来自分类Dev

序列化器上的Django Rest Framework条件字段

来自分类Dev

Django REST Framework序列化非常慢

来自分类Dev

Django Rest Framework可写嵌套序列化器

来自分类Dev

Django Rest Framework-筛选序列化器字段

来自分类Dev

Django Rest Framework序列化器和视图

来自分类Dev

在Django-rest-framework中序列化通用关系

来自分类Dev

Django Rest Framework嵌套的序列化程序部分更新

来自分类Dev

Django Rest Framework更新嵌套序列化程序

来自分类Dev

Django Rest Framework序列化程序中的循环依赖

来自分类Dev

搜索视图/序列化器-Django Rest Framework

来自分类Dev

Django Rest Framework使用动态字段序列化

来自分类Dev

Django Rest Framework递归嵌套父级序列化

来自分类Dev

Django REST Framework嵌套的序列化器无效

来自分类Dev

从Django Rest Framework序列化器中排除字段

来自分类Dev

Django Rest Framework在序列化之前更新数据

来自分类Dev

Django Rest Framework序列化在发布请求时失败

来自分类Dev

Django Rest Framework嵌套的序列化器创建方法

来自分类Dev

Django Rest Framework-TaggableManager字段的反序列化

Related 相关文章

  1. 1

    翻译序列化 Django Rest Framework

  2. 2

    Django Rest Framework序列化程序和Django表单

  3. 3

    Django Rest Framework实例化序列化程序错误

  4. 4

    Django REST Framework序列化器字段必填= false

  5. 5

    Django Rest Framework按顺序返回序列化的数据

  6. 6

    Django Rest Framework序列化器分别渲染表单

  7. 7

    Django Rest Framework中的序列化器字段筛选?

  8. 8

    Django Rest Framework上的序列化器导入错误

  9. 9

    django-rest-framework序列化器to_representation

  10. 10

    Django REST Framework序列化器字段必填= false

  11. 11

    Django Rest Framework序列化器丢失数据

  12. 12

    序列化器上的Django Rest Framework条件字段

  13. 13

    Django REST Framework序列化非常慢

  14. 14

    Django Rest Framework可写嵌套序列化器

  15. 15

    Django Rest Framework-筛选序列化器字段

  16. 16

    Django Rest Framework序列化器和视图

  17. 17

    在Django-rest-framework中序列化通用关系

  18. 18

    Django Rest Framework嵌套的序列化程序部分更新

  19. 19

    Django Rest Framework更新嵌套序列化程序

  20. 20

    Django Rest Framework序列化程序中的循环依赖

  21. 21

    搜索视图/序列化器-Django Rest Framework

  22. 22

    Django Rest Framework使用动态字段序列化

  23. 23

    Django Rest Framework递归嵌套父级序列化

  24. 24

    Django REST Framework嵌套的序列化器无效

  25. 25

    从Django Rest Framework序列化器中排除字段

  26. 26

    Django Rest Framework在序列化之前更新数据

  27. 27

    Django Rest Framework序列化在发布请求时失败

  28. 28

    Django Rest Framework嵌套的序列化器创建方法

  29. 29

    Django Rest Framework-TaggableManager字段的反序列化

热门标签

归档