1
我想在我的网站上安装消息系统。 对于这一点,我想选择为每个发件人和收件人:发件人的Django:消息系统,请求
- 用户名 - 收件人的 用户名 - 最新消息 - 这最后的交换消息的日期 - 交换的消息总数。
我的模式是这样的:
class MessagePerso(models.Model):
text = models.CharField(max_length=200)
date_sent = models.DateTimeField(auto_now_add=True,editable=False)
read_at = models.DateTimeField(("read at"), null=True, blank=True)
class Conversation(models.Model):
sender = models.ForeignKey(User,null=False,related_name="sender")
recipient = models.ForeignKey(User,null=False,related_name="recipient")
title = models.CharField(max_length=90)
created_at = models.DateTimeField(auto_now_add=True,editable=False)
messages = models.ManyToManyField(MessagePerso)
现在,我有这样的:
u = request.user
Conversation.objects.filter(Q(sender=u)|Q(recipient=u)).annotate(nbMsg=Count('messages'),date=Max('messages__date_envoie')).values('sender__username','recipient__username','nbMsg','date').order_by('date')
它的作品,但我也希望最后的消息的文本(型号MessagePerso) ...
怎么做到的?
是的,但我想通过与其他用户的谈话来计算消息。我将继续尝试搜索解决方案 – Zoulou
我修改了我的模型(编辑后),但我遇到了一个问题 – Zoulou