Я создал эту простую функцию поиска:
def search(request):
if "q" in request.GET:
querystring = request.GET.get("q")
print(querystring)
if len(querystring) == 0:
return redirect("/search/")
posts = Blog.objects.filter(title__icontains=querystring | tagline__icontains=querystring | contents__icontains=querystring)
context= {"posts": posts}
return render(request, "kernel/search.html", context)
else:
return render(request, "kernel/search.html")
Когда я использую только одно условие, например:
posts = Blog.objects.filter(title__icontains=querystring)
это показало мне правильные результаты. Но когда я использую несколько параметров, у меня есть SyntaxError: неверный синтаксис .
Я был уверен, что запрос соответствует:
SELECT * FROM Post, где "title" - это "key_search" или "tagline" -
«key_search» или «содержимое» - это «key_search»
Как я могу решить?