方法一
from django.db.models import Q
q = Q()
for key in keyword.split("||"):
q |= Q(name__icontains=key)
queryset = queryset.filter(q)
方法二
from django.db.models import Q
from functools import reduce
from operator import or_
def get_companies_from_merchants(merchant_list):
q_object = reduce(or_, (Q(name__icontains=merchant) for merchant in merchant_list))
return Companies.objects.filter(q_object)