У меня есть кнопка HTML, которая должна сортировать результаты поиска по алфавиту.
Код HTML кнопки:
<a href="?a-z=True" type="button" class="btn btn-outline-{% if 'a-z' in request.GET %}success{% else %}secondary{% endif %}">A-Z</a>
views.py
:
def query_search(request):
articles = cross_currents.objects.all()
search_term = ''
if 'keyword' in request.GET:
search_term = request.GET['keyword']
articles = articles.annotate(similarity=Greatest(TrigramSimilarity('Title', search_term), TrigramSimilarity('Content', search_term))).filter(similarity__gte=0.03).order_by('-similarity')
if request.GET.get('a-z') == 'True':
articles = articles.order_by('Title')
В настоящее время URL содержит ключевые слова, которые ищет пользователь.Например, если пользователь ищет «сыр», URL будет search/?keyword=cheese
.Когда я нажимаю кнопку сортировки, URL становится search/?a-z=True
и теряет ключевое слово, что означает, что механизм сортировки не сортирует результаты поиска по ключевому слову.Я думаю, мне нужно, чтобы URL содержал как ключевое слово, так и ?a-z=True
, чтобы механизм сортировки работал с результатами поиска.Как я могу это сделать?