Python 仅当django中的值不为空时,才基于该值筛选查询

Python 仅当django中的值不为空时,才基于该值筛选查询,python,django,Python,Django,我需要根据变量筛选查询,但前提是该变量不为空。。。以下是我尝试过的: rows=attention.objects.filter(如果类型为“”,则类型为“”,否则为“”) 问题出在else'*'部分,我试图删除else,但它不起作用,因为需要在三元运算符中使用else after if,也尝试了else pass,但它给了我一个错误 编辑 我可以在queryset之外使用if,但是我有多个动态变量,我将在同一个查询中使用,因此将其包装在if语句中不会很好地工作如何创建一个带有过滤器参数的di

我需要根据变量筛选查询,但前提是该变量不为空。。。以下是我尝试过的:

rows=attention.objects.filter(如果类型为“”,则类型为“”,否则为“”)
问题出在
else'*'
部分,我试图删除else,但它不起作用,因为需要在
三元运算符中使用else after if,也尝试了
else pass
,但它给了我一个错误

编辑
我可以在queryset之外使用
if
,但是
我有多个动态变量,我将在同一个查询中使用,因此将其包装在if语句中不会很好地工作

如何创建一个带有过滤器参数的dict:

filter_params = {}
if the_type != "":
    filter_params['type'] = the_type
rows = Attendance.objects.filter(**filter_params)

检查这是否解决了您的问题-。创建自定义模型管理器