Динамическая генерация запроса Django .filter() с различными атрибутами и типами соответствия [дубликат]
Я использую Django 1.6 и Python 2.7, и мне нужно динамически генерировать фильтр queryset.
Основное, что мне нужно, это использовать различные поля (field1, field2, field3) в фильтре и использовать различные типы соответствия (equals, startsfrom, endswith, contains).
Вот пример возможных комбинаций:
Mymodel.objects.filter(field1__strartswith=somevalue).
# Or like this:
Mymodel.objects.filter(field2__endswith=somevalue).
# Or like this:
Mymodel.objects.filter(field3=somevalue)
# Or like this:
Mymodel.objects.filter(atrr3__contains=somevalue)
Я нашел этот ответ, и он выглядит хорошо, но я считаю, что есть более "Django-подобные" способы сделать это. Я также нашел этот с объектом Q. Но могу ли я как-то импортировать и передавать в набор запросов некоторые объекты этого типа соответствия?