我正在开发一个django项目,我想基本上创建一个我正在创建的两个查询中的查询。
我有一个朋友表,其中包含以下列
user - friend - status - create
-------------------------------
josh - omar - 1 - 1
steve - omar - 1 - 1
omar - tava - 1 - 1
我会创建一个查询来获取用户是omar的记录,另一个用于获取朋友是omar的记录。
有没有办法创建一个可以合并两个查询的查询,比如
抓取omar是朋友或用户的所有记录,并将它们设置为一个查询集对象。
答案 0 :(得分:2)
听起来你可能想看看Q对象。这些允许您只是描述...进行两个单独的查询,并将结果一起添加。 complex-lookups-with-q-objects
文档中有一个示例,显示您可以执行“或”操作。查找如下:
Q(question__startswith='Who') | Q(question__startswith='What')
答案 1 :(得分:1)
celery -A project worker -l info --detach
或
from django.db.models import Q
Friend.object.filter(Q(user=omar)|Q(friend=omar))