具有变量列的Django查询过滤器

编程入门 行业动态 更新时间:2024-10-09 15:18:13
本文介绍了具有变量列的Django查询过滤器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我试图使用

info=members.filter(name__contains=search_string)

我遇到的问题是我不知道用户想要提前搜索哪个字段,所以我需要替换'name 'with a variable as as

The problem I have is I do not know which field the user wants to search ahead of time so I need to substitute 'name' with a variable as in

variable_column = 'name' search_type = 'contains' filter = variable_column + '__' + search_type info=members.filter(filter=search_string)

如何做?

Rich

推荐答案

几乎在那里。 。

members.filter(** {'string__contains':'search_string'})

要了解它在做什么,google在左边:) 了解Python中的kwargs

To understand what it's doing, google around : ) Understanding kwargs in Python

** 将字典键/值对扩展为keywo rd参数 - 值对。

** expands dictionary key/value pairs to keyword argument - value pairs.

要使您的示例适应解决方案:

To adapt your example to the solution:

variable_column = 'name' search_type = 'contains' filter = variable_column + '__' + search_type info=members.filter(**{ filter: search_string })

更多推荐

具有变量列的Django查询过滤器

本文发布于:2023-10-12 04:14:50,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1483695.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:过滤器   变量   Django

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!