我试图用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
所以这是我的模型(我删除了一些字段以帮助您专注于关键字字段)
我的serialallizer看起来像这样:
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" ]
如果您知道如何使用我的serialallizer,我将感谢:)