在Django集团私人邮件用户

问题描述 投票:0回答:2

我建立了一个私人邮件系统,以便在Django注册用户,我有一个小问题。我不能被用户想办法到组的消息。

下面的图像示出了两个用户之间的消息。这是谈话用户karolann所见。你可以看到它正确不群的消息。该句“你好苏珊”和“这两个模块是非常具有挑战性”要来的最后一句话后 - “当你在网上给我发短信。”

现在,消息被发送分组。如果由接收器I组他们,但它仍然不能正常工作。这将需要的东西,是很常见的既像一个对话id什么的。

所以我的问题是:如何创建对话?我希望所有的两个用户之间的消息是在同一个地方。

enter image description here

我的models.py如下:enter image description here

我的views.py如下:enter image description here

最后,我的模板:enter image description here

django django-models django-templates django-views
2个回答
0
投票

你应该从两个用户端同时适用于发送者和接收者多个过滤器在一起,然后加入他们的行列。使用dictsort和重组不会在这种情况下工作。

要获得一个用户/ other_user会话的所有邮件,您需要:

Message.objects.filter(sender=user.profile, reciever=other_user.profile)|Message.objects.filter(receiver=user.profile, sender=other_user.profile)

(注|操作符可以用于union)

你应在视图中每个会话创建这些查询,并通过在模板下的这些查询的列表。


0
投票

因为凡试图做到这一点在Django,我建议这个解决方案 - https://stackoverflow.com/a/43697388/10036828

这是我可以使它工作的唯一途径。

© www.soinside.com 2019 - 2024. All rights reserved.