我有以下代码:
hotels = models.Hotel.objects.filter(
wed=True,
county=hotel_main.county.id,
subscriptions__end_date__gte=datetime.date.today(),
subscriptions__enquiry_count__lte=F('subscriptions__tier__enquiry_limit'),
).filter(Q(x=TRUE|Q(y=True)).distinct()
我有一个清单test = ['x','y','z','w']
过滤器的值动态变化,所以我使用类似的东西:
filter(Q(test[0]=TRUE|Q(test[3]=True))
它动态变化,但是当我这样做时,出现以下错误:
Keyword can't be an expression
我知道我不能在那里使用它,但让我知道如何实现这一点......谢谢!
编辑
我按照克里斯的建议做了:
test[1] = {x: True}
在我的过滤器中,我做了如下
filter(Q(test[1])).
它给了我以下错误:
need more than 1 value to unpack