Я пытаюсь создать приложение, в котором пользователь может одновременно искать несколько названий одной категории. Fe Есть 10 названий как мексикола, красный распутин и черная магия. И мне бы хотелось, чтобы пользователь мог искать мексиколу и красный распутин, просто написав «мексикола красный распутин» или «красный распутин мексикола черная магия» или просто «черная магия» и так далее. Но теперь он работает только с одним .. я не могу найти, что не так.
Вот мои взгляды
from django.shortcuts import render
from django.db.models import Q #new
from .models import Recipe
from .models import Ingredient
def drink_list(request):
template = "drinks/drink_list.html"
return render(request, template)
def search_results(besos):
query = besos.GET.get('q')
q = Q()
for queries in query.split():
q = (Q(recipe_name__icontains=queries))
results = Recipe.objects.filter(q)
template = "drinks/search_results.html"
context = {
'results' : results,
}
return render(besos, template, context)
модель:
from django.db import models
class Ingredient(models.Model):
ingredient_name = models.CharField(max_length=250)
def __str__(self):
return self.ingredient_name
class Recipe(models.Model):
recipe_name = models.CharField(max_length=250)
preparation = models.CharField(max_length=1000)
ingredients = models.ManyToManyField(Ingredient)
def __str__(self):
return self.recipe_name