繁体   English   中英

Select_Related和JSON-如何序列化外键对象

[英]Select_Related and JSON - How to serialize foreign key objects

假设我有2个模型:

class Blog(models.Model):
    name = models.CharField(max_length=100)

class Entry(models.Model):
    blog = models.ForeignKey(Blog)
    headline = models.CharField(max_length=255)

我需要以JSON格式返回所有带有相应博客的条目:

TO_JSON = serializers.serialize('json', Entry.objects.select_related('blog').filter(...))

TO_JSON包含我需要的所有条目,但没有博客。

感谢@bento提出了以下答案, django可以序列 化外 键对象

entries = Entry.objects.select_related('blog').filter(...)
list = []
for row in entries:
        list.append({'blog_title':row.blog.title, 'entry_title': row.title})
return json.dumps(list)

编辑

https://docs.djangoproject.com/zh-CN/dev/ref/models/querysets/#django.db.models.query.QuerySet.select_related中 ,您可以尝试如下操作:

e = Entry.objects.select_related('blog').filter(...)
return serializers.serialize('json', [x.blog for x in e])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM