我需要为包含特定Comment
的所有Project
获取所有User
个。含义,是用户所属的所有项目的所有注释。
用户可以属于许多项目,每个项目都有很多评论。
如何做到这一点?到目前为止,我已经通过创建嵌套的for循环在我的模板中解决了它,但这不好,因为我需要对结果进行排序。
我在想:
projects = user.projects
comments = Comment
for p in projects:
for c in p.comments:
comments.append(c)
return comments
......似乎没有用。
任何线索?
答案 0 :(得分:4)
我认为这样做会:
query = Comment.objects.filter(project__user=person)
如果Comment模型具有项目的外键,该外键具有用户的外键。这将涉及数据库中的SQL连接语句。最好在数据库上执行此操作,因为它的效率要高得多。数据库的设计完全是为了做到这一点。