Django GET ключи как отображенный список - PullRequest
0 голосов
/ 20 февраля 2012

У меня относительно простая проблема, но пока я не нашел наиболее подходящего решения.

У меня есть форма, которая передает несколько выбираемых пользователем значений в качестве переменных Get.Большинство из них являются полями BooleanChoice и могут быть выбраны или нет.Мне нужен краткий способ собрать все ключи GET в списке , если они не пусты , и сопоставить их с более удобочитаемыми формами для заголовков таблиц.

Например, если мойполучить переменные выглядят так:

?site=1&&startdate=1988-09-09&enddate=1989-09-09&mean_air_temp=True&q=table&submit=Query

Я хочу сделать список примерно так:

['site', 'startdate', 'endate', 'man_air_temp', ...,]

И затем получим:

['Site Name', 'Start Date', 'End Date', 'Mean Air Temp', ...,]

Что может тогдабыть связан с моими данными в качестве заголовков таблицы в шаблоне.

Я знаю, что есть различные способы сделать это в длину, но хотел бы знать, есть ли краткий, питонский способ получения желаемых результатов.

Любая помощь очень ценится.

1 Ответ

4 голосов
/ 20 февраля 2012

GET-параметры передаются в представление как словарь-объект в request.GET.Итак, вам просто нужен другой словарь для сопоставления ключей с желаемыми заголовками:

header_mapping = {
    'site': 'Site Name',
    'startdate': 'Start Date'.
    ....
}
headers = [header_mapping[k] for k, v in request.GET.items() if v]

Понимание списка просто отображается через список пар (ключ, значение) в запросе GET, и если значение равноне пустой, он ищет отображение заголовка и добавляет его в список.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...