Вы можете сделать что-то вроде этого:
my_filter = {}
my_filter[my_keyword] = my_filter_value
my_object = MyModel.objects.filter(**my_filter)
Например, ваши переменные могут быть:
my_keyword = 'price__gte'
my_filter_value = 10
Что приведет к получению всех объектов с price >= 10
. И если вы хотите запросить более одного поля, вы можете просто добавить еще одну строку ниже my_filter[my_keyword]
:
my_filter[my_keyword] = my_filter_value
my_filter[my_other_keyword] = my_other_filter_value