gpt4 book ai didi

django - 如何在反向外键上选择相关?

转载 作者:行者123 更新时间:2023-12-04 01:15:29 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:




9年前关闭。




Possible Duplicate:
A left outer reverse select_related in Django?



A BlogPost有很多 Comment s。我想得到一个列表 BlogPost s 和他们所有的评论。

因此,我有
BlogPost.objects.filter(my_filter).select_related()

但是外键在 Comment 上,而不是 BlogPost ,所以 select_related()不预取任何评论。有没有办法让它发挥作用?

我无法反转查询( Comment.objects... ),因为其他对象是 select_related()确实 fetch 不起作用。我需要它同时工作。

最佳答案

你为什么不获取评论然后使用 regroup模板标签来显示它们:

# Select all Comments with BlogPost data - one query
comments = Comment.objects.select_related('blog_post').order_by('-blog_post').all()

然后在模板中:
{% regroup comments by blog_post as posts %}
{% for blog_post in posts %}

<p>Blog post {{ blog_post.title }}</p>
<ul>
{% for comment in blog_post.comments %}
...
{% endfor %}
</ul>
</p>
{% endfor %}

关于django - 如何在反向外键上选择相关?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6887171/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com