我想创建一个查询,它将表单中发布的数据作为搜索条件,并根据这些条件过滤模型。例子
<form>
<first_name input>
<middle_name input>
<last_name input>
</form>
我想要的行为是与结束所有查询匹配的视图,但前提是它们具有值。也就是说,如果用户只完成名字输入以仅使用名字进行搜索,如果给出中间名则使用两个 creteria 等进行搜索。我的想法是手动执行此操作,但听起来不太好。
if first_name != '' and middle_name='' and last_name='':
return filtering only with name
elif etc....
这不是建设性的或正确的。在 django 中是否有另一种方法可以做到这一点?仅当它不是空字符串时才使用 creteria。