Получить параметр списка запросов из Datatable в Django

Я использую DataTable с django и пытаюсь настроить опцию serverSide. Все работает нормально, кроме параметра order. Datatable отправляет все параметры на бэкенд, в котором порядок выглядит следующим образом:

order[0][column]: 0
order[0][dir]: asc
order[1][column]: 2
order[1][dir]: desc

Я пытаюсь получить все параметры заказа в списке с помощью функции получить список(), но каждый раз получаю пустой список

orders = request.GET.getlist('order[]')

Что мне не хватает?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
453
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Обычно вы получаете пустой список для getlist, если ключевое слово, которое вы ищете, не существует. Вместо этого попробуйте request.GET.getlist('order').

Я тоже пробовал это и все еще получаю пустой список []. Но я могу получить такие параметры request.GET.get('order[0][column]').

Alberto 01.04.2019 15:41

Проблема в том, что пользователь может выбрать более одного столбца для заказа, поэтому я хочу сделать это динамически. Вот почему я хочу весь список для параметра order: S

Alberto 01.04.2019 15:43

Я нашел решение. Я отправил ответ, спасибо за вашу помощь.

Alberto 01.04.2019 16:04
Ответ принят как подходящий

Хорошо, я нашел решение. Я отправлял ajax в виде закодированной формы, и он получал ключи для заказа в виде буквальной строки order[0][column]order[0][dir]. Что мне нужно было сделать, так это отправить ajax в виде данных в формате JSON и получить параметры с помощью json.loads() в представлении:

Таблица данных

"ajax": {
       "url": url,
       "contentType": "application/json",
       "type": "POST",
       "data": function (d) {
          return JSON.stringify(d);
        }
},

Вид

request_data = json.loads(request.body)
dt_draw = request_data.get('draw')
dt_start = request_data.get('start')
dt_length = request_data.get('length')
dt_search = request_data.get('search').get('value')
dt_order = request_data.get('order')

Другие вопросы по теме