Я пишу представление, которое выполняет поиск в моей базе данных моделей в зависимости от выбранных пользователем полей поиска.Базовый код выглядит примерно так:
def search(request):
if submit in request.POST:
...
kwargs = {}
if request.POST['field1']:
kwargs['field1__icontains'] = request.POST['field1']
if request.POST['field2']:
kwargs['field2__icontains'] = request.POST['field2']
...
results_list = Mymodel.objects.filter(**kwargs)
...
Конечно, это нормально, если мой запрос - все операторы AND, но если мне нужно добавить туда OR - возможно ли это?Например, если мне нужно field2__icontains = request.POST['field2']
ИЛИ field3__icontains = request.POST['field2']