如何在django中获取收件箱中的所有邮件?
我想获取属于用户A和B之间收件箱的所有邮件 我的模特如何在django中获取收件箱中的所有邮件?,django,django-models,chat,Django,Django Models,Chat,我想获取属于用户A和B之间收件箱的所有邮件 我的模特 class Inbox(models.Model): by_user = models.ForeignKey(User); # who starts messaging to_user = models.ForeignKey(User); # second user class Message(models.Model): sender = models.ForeignKey(User); # who s
class Inbox(models.Model):
by_user = models.ForeignKey(User); # who starts messaging
to_user = models.ForeignKey(User); # second user
class Message(models.Model):
sender = models.ForeignKey(User); # who starts messaging
receiver = models.ForeignKey(User); # second user
inbox = models.ForeignKey(Inbox); # message belongs to the inbox
url.py
url(r'^chat/(?P<username>\w+)/$', views.getMessages)
有人,请帮我更正我的URL.py和view.py。您的URL上缺少模式 现在你有名字的开头,但没有正则表达式 按照文档调整url.py以包含正确的正则表达式模式
看起来您的视图和URL最终不会回答您在A-B之间获取所有邮件的问题。充其量,您可以从A获取所有邮件或将所有邮件发送到B。由于您在邮件上有发件人/收件人,您可以将视图更改为:
def getMessages(request, username):
user = User.objects.get(username=username)
messages = Messages.objects.filter(sender=user).order_by('-date')
return render(request, "inbox/chatBox.html", {'messages': messages})
这将为您提供用户在URL中发送的所有消息。Cool。到目前为止你有什么?你有什么问题?我做过模型<代码>收件箱和邮件。之后,我不知道如何继续。url.py已更新。您能在views.py中帮助我吗?更新了答案以帮助了解views.py
def getMessages(request, username):
user = User.objects.get(username=username)
messages = Messages.objects.filter(sender=user).order_by('-date')
return render(request, "inbox/chatBox.html", {'messages': messages})