我想像这样过滤消息
messages = Message.objects.filter(who_id=logged_user) | Q(whose_id=logged_user)
我的结果=
who : 1 , whose : 2
who : 2 , whose : 1
who : 1 , whose : 2
who : 2 , whose : 1
who : 1 , whose : 3
但我想要这个结果
who : 1 , whose : 2
who : 1 , whose : 3
我的模特
class Message(models.Model):
uuid = UUIDField(auto=True)
who = models.ForeignKey(User,blank=True,related_name="who_%(class)s_objects")
whose = models.ForeignKey(User,blank=True,related_name="whose_%(class)s_objects")
message = models.TextField()
time = models.DateTimeField(auto_now=True)
如何排除所有其他结果?
答案 0 :(得分:0)
您的查询
messages = Message.objects.filter(who_id = logged_user)| Q(= whose_id logged_user)
返回以下所有消息:
根据您的问题,您似乎只需要
消息即
messages = Message.objects.filter(who_id = logged_user)
应该有用。
如果那不是您所追求的,请指明查询的逻辑。