假设我有两个模型:
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包含我需要的所有条目,但没有博客。
答案 0 :(得分:1)
感谢@bento提出了以下答案,该答案可在django serialize foreign key objects处找到:
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)
答案 1 :(得分:0)
从https://docs.djangoproject.com/en/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])