我有这段代码
session_inicio = django_filters.Filter(lookup_type = 'gte',
label = 'session_inicio',
name='session_inicio')
我想在我的查询中加入另一个条件......
session_end = django_filters.Filter(lookup_type = 'lte',
label = 'session_end',
name='session_end')
为了得到这样的东西:
rangedates = session_inicio || session_end
有可能做这样的事吗?
答案 0 :(得分:0)
我不相信普通的QuerySet对象支持那些运算符,但
您可以动态构建kwargs
字典并使用**
dynamic_lookup_dict = {}
if condition:
dynamic_lookup_dict['session_inicio__gte'] = 'avalue'
elif other_condition:
dynamic_lookup_dict['session_inicio__lte'] = 'avalue'
django_filters.filter(**dynamic_lookup_dict)