Сортировка с использованием href - Django
Я пытаюсь отсортировать данные по заголовку столбца таблицы. Я использую метод GET.get, но кажется, что он не работает. Ссылка создается, но после нажатия на нее, url меняется, но таблица не сортируется соответствующим образом.
def offer_sorting(request):
sort_column = request.GET.get('sort_by', 'date')
slist = Offer.objects.order_by(sort_column)
context = {"offers": slist}
return render(request, 'main/offer.html', context)
шаблон:
<!DOCTYPE html>
<html>
{% extends "main/header.html" %}
{% block content %}
<div class="row">
<div class="col-md">
<div>
<h1> Offers </h1>
<br>
</div>
<p align = "right">
<br>
<a class="waves-effect waves-light btn-large" href = "submitoffer/">New Offer</a>
</p>
<div class="card card-body">
<table class="table">
<thead>
<tr>
<th><a href="{% url 'main:Offers' %}?sort_by=location_name">Location</a></th>
<th>Date</th>
<th>Minerals</th>
<th>Chemical Analysis</th>
<th>User</th>
</tr>
</thead>
<tbody>
{% for offer in offers %}
<tr>
<td>{{offer.location_name}}</td>
<td>{{offer.date}}</td>
<td>{{offer.minerals}}</td>
<td>{{offer.chem_anal}}</td>
<td>{{offer.user_data}}</td>
<td> <a class="waves-effect waves-light btn" href = "{% url 'main:details' pk_test=offer.id %}" >Details</a> </td>
<td> <a class="waves-effect waves-light btn" href = "{% url 'main:bid' pk_test=offer.id %}" >Bid</a> </td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
{% endblock content %}
</html>
модель Offer включает следующие поля, которые будут использоваться для сортировки:
- минералы
- дата
- имя_локации
Где в html находятся поля sort_by и date? Я не вижу их, вам нужно поместить их внутрь формы (которая имеет метод get и имеет кнопку или поле ввода для отправки их значений в django view) -... Husam Alhwadi 1