0
我想在一个查询中获得所有Blogs
,并且同时我想知道每个Blog的条目(或条目),如果博客有。如何从一个模型中获取django查询并将模型ForeignKey中的信息添加到它中?
class Blog(models.Model):
name = models.CharField(max_length=100)
tagline = models.TextField()
class Entry(models.Model):
blog = models.ForeignKey(Blog)
headline = models.CharField(max_length=255)
就像访问blog.ENTRY属性一样。起初,这是想到的方式。 1)得到的所有博客,2)设定每个博客条目ATTR其条目:
for blog in Blog.objects.all():
entry = Entry.objects.filter(blog=blog)
setattr(blog, 'ENTRY', entry)
但我想这样做,在短短的一个查询,因为我不想做键入过滤器的查询在for循环。
不知道你在做什么。每个博客都有一个属性“entry_set”,它是相关条目的查询集。 –
查看此线程和'select_related'的Django文档:https://stackoverflow.com/questions/33230540/django-select-related-when-to-use-it – whp
对不起,请仔细阅读你的问题,这是一个更好的线程解释'select_related'和'prefetch_related':https://stackoverflow.com/questions/23121850/select-related-with-reverse-foreign-keys – whp