Django query filter with variable column

后端 未结 2 1388
感情败类
感情败类 2020-11-29 16:48

I am trying to filter a queryset using

info=members.filter(name__contains=search_string)

The problem I have is I do not know which field t

2条回答
  •  攒了一身酷
    2020-11-29 17:31

    Almost there..

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

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

    ** 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 })
    

提交回复
热议问题