【发布时间】:2015-09-13 05:49:26
【问题描述】:
我在将参数通过列表传递给 Django 过滤器时遇到问题。这是我的代码:
args = [ "Q( title__icontains = 'Foo' ) | Q( author__icontains = 'Foo' )", "Q( title__icontains = 'Bar' ) | Q( author__icontains = 'Bar' )" ]
entries = Book.objects.filter( *args )
但filter 返回此错误:
ValueError:解包的值太多,
【问题讨论】:
-
foo 和 bar 查询有什么关系?它们应该被 AND-ed 或 OR-ed 在一起吗?
-
这里是谓词的关系:
(title__icontains = 'foo' OR author__icontains = 'Foo') AND (title__icontains = 'bar' OR author__icontains = 'bar')
标签: python django-filter