[英]Django select_related chained foreign keys doesn't return non-direct related objects
[英]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.