【发布时间】:2016-03-20 19:14:52
【问题描述】:
This question makes clear how chaining and multiple argument filters are different 但它没有指定如何使它们的链式过滤器等效。
例如,给定代码:
query = mymodel.filter(name="Foo",foreignkey_property1="Bar",foreignkey_property2="Zap")
是否有可能从链式查询集中获得 and 版本,并让上面的查询和下面的查询等效:
query = mymodel.filter(name="Foo",foreignkey_property1="Bar")
query = query.filter(foreignkey_property2="Zap",???)
我确定我已经阅读过这是怎么可能的,但找不到。
【问题讨论】:
-
啊!好吧,这就是我的代码正在做的事情。我怎样才能使它们等效?
-
您是否可以为
foreignkey_property1="Bar"和foreignkey_property2="Zap"条件创建单独的Q查询,然后将它们组合成一个filter? -
嗯...我已经使用 Q()'s 重写了这个,但我想保持开放状态,看看是否有其他解决方案,以防有人没有那么奢侈。
标签: python django django-queryset