【发布时间】:2017-05-28 06:56:42
【问题描述】:
我需要从 db 获取所有来自 db 的关系样本。目前我尝试使用
Msg.objects.filter(Q(u1=request.user)|Q(u2=request.user))
U1 is a sender, U2 is a recipient. (Fields have forgeinkey, to User model)
这是在用户之间发送消息的应用程序。我想创建当前登录用户是 U1 或 U2 的会话列表,并获取列表以显示而没有重复。收件人/发件人只有一个链接
【问题讨论】:
-
那么你遇到了什么问题?
-
此查询获取所有关系,然后在对话列表中我有所有消息.. 我只需要获取列表对话,如 facebook、与用户 x 的对话、与用户 y、用户 z 的对话,没有重复
-
是的,这就是你将得到的然后循环并将它们放入列表中,检查它是否存在于列表中,如果是,则不要添加它们,否则附加它们
-
嗯,我不能在查询中这样做吗?我不想在模板中过滤超过 20K 的消息
-
限制它,比如使用分页,或者像fb使用的eagerload,直到点击它不会显示旧消息,