我的models.py
中有以下课程class Story(models.Model):
title = models.CharField(max_length=60)
creator = models.ManyToManyField(User, blank=True)
我正在尝试使用2个创建者名称返回QuerySet。
例如,我如何过滤具有创作者的故事:用户1 obj和用户2 obj?
我已阅读多对多关系文档但找不到任何内容。我达成的最接近的解决方案是......
Story.objects.filter(creator__in=[1,2]).distinct()
但它不会对1和2进行联合查询,只需1 OR 2.
非常感谢任何帮助!
答案 0 :(得分:1)
你需要我们一个Q对象。我会尝试这样的事情:
from django.db.models import Q
Story.objects.filter(Q(creator=1) | Q(creator=2))
答案 1 :(得分:0)
您可以使用Q对象:
https://docs.djangoproject.com/en/1.4/topics/db/queries/#complex-lookups-with-q-objects
以下内容应该符合您的要求:
Story.objects.filter(Q(creator=1), Q(creator=2))