将kwargs传递给Django Filter

时间:2016-08-04 21:57:14

标签: python django django-templates django-admin django-views

从Django Admin中查看模型条目时,您可以指定过滤器。我怎么能模仿这种行为?不熟悉kwargs但与此类似:

foo = Model.objects.filter(**__exact='**')

其中第一组**将是模型中的字段,第二组将是条目。基本上根据用户在前端选择的内容使查询变量。如何将该变量排序选项发送到视图,然后将其返回到网页。怎么用字典?请帮忙

这个SO question已被证明有点帮助,但仍然无法完全掌握它。

1 个答案:

答案 0 :(得分:6)

您可以使用**

将python dict解压缩为过滤器参数
your_filters = {
'field_1__exact': value_1,
'field_2__gte': value_2,
}

Model.objects.filter(**your_filters)

说,您可以根据用户输入动态构建查询过滤器(python dict)。