#javascript #python #django #django-views #django-templates
#javascript #python #django #django-представления #django-шаблоны
Вопрос:
Я создаю веб-сайт в django и хочу добавить кнопку и выпадающее меню над таблицей. В выпадающем меню будет указано название столбцов, и если я выберу один столбец, а затем нажму кнопку сортировать, то таблица будет отсортирована на основе этих столбцов.
def index(request):
slist = Stock.objects.all()
paginator = Paginator(slist, 20)
page = request.GET.get('page')
slist = paginator.get_page(page)
template = loader.get_template('stocks/screener.html')
context = {
'slist': slist,
}
return HttpResponse(template.render(context, request))
Что мне делать??
Ответ №1:
используйте функцию «order_by»:
def index(request):
sort_column = request.GET.get('sort_by', 'default_column_name')
slist = Stock.objects.all().order_by(sort_column)
<other codes>
Комментарии:
1. Это не решит мою проблему. Я хочу сделать это с помощью кнопки
2. при нажатии кнопки измените страницу на: http://<yourdomain>/<path>/?sort_by=<имя_колонки> замените <имя_колонки> именем столбца, по которому вы хотите отсортировать свои данные. конечно, это не лучший способ сделать это. (лучшим способом было бы предоставить REST api для интерфейса для динамической загрузки данных)