繁体   English   中英

如何在Django中合并过滤器

[英]how to combine filters in Django

我有这个代码

 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

可以做这样的事情吗?

我不相信普通的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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM