我建立了一个私人邮件系统,以便在Django注册用户,我有一个小问题。我不能被用户想办法到组的消息。
下面的图像示出了两个用户之间的消息。这是谈话用户karolann所见。你可以看到它正确不群的消息。该句“你好苏珊”和“这两个模块是非常具有挑战性”要来的最后一句话后 - “当你在网上给我发短信。”
现在,消息被发送分组。如果由接收器I组他们,但它仍然不能正常工作。这将需要的东西,是很常见的既像一个对话id什么的。
所以我的问题是:如何创建对话?我希望所有的两个用户之间的消息是在同一个地方。
你应该从两个用户端同时适用于发送者和接收者多个过滤器在一起,然后加入他们的行列。使用dictsort和重组不会在这种情况下工作。
要获得一个用户/ other_user会话的所有邮件,您需要:
Message.objects.filter(sender=user.profile, reciever=other_user.profile)|Message.objects.filter(receiver=user.profile, sender=other_user.profile)
(注|操作符可以用于union)
你应在视图中每个会话创建这些查询,并通过在模板下的这些查询的列表。
因为凡试图做到这一点在Django,我建议这个解决方案 - https://stackoverflow.com/a/43697388/10036828。
这是我可以使它工作的唯一途径。