2015-06-15 3 views
1

У меня есть несколько возможных параметров для обработки на странице. Предположим x0, x1, x2, ..., x1000. Кажется неудобным получать и обрабатывать их один за другим по запросу.GET.get ('x0'), request.GET.get ('x1'), ...Django: Обработка нескольких параметров страницы

Любая идея разместить их в списке, так что они могут обрабатываться в цикле.

+0

Вы должны быть немного более конкретным. 'request.GET' - словарь-подобный объект, вы можете повторять его, как вам нравится. Что именно вы делаете? Показать код. –

+1

@ DanielRoseman, просто любопытно для моего собственного понимания ... что делает его «словарным», а не фактическим словарем? – rnevius

+1

Это [QueryDict] (https://docs.djangoproject.com/en/1.8/ref/request-response/#querydict-objects), который является обычным подклассом dict, который позволяет использовать несколько значений для одного ключа - следовательно, частые вопросы, которые мы получаем здесь о '.get()' vs '.getlist()'. –

ответ

3

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

for var in request.GET: 
    value = request.GET[var] 
    # do something with the value ... 

Или, если вы хотите поместить значения в списке:

val_list = [] 
for var in request.GET: 
    var_list.append(request.GET[var]) 
+0

Очень полезно. Но каждый var будет чем-то вроде x5, x21 и т. Д. Могу ли я отделить его секцию индекса, иметь что-то вроде 5, 21 и т. Д. В другой переменной? – Ahmad

+0

Спасибо. Решение было очень простым. Я использовал var.replace («x», «»), чтобы удалить x, а затем использовал кастинг для преобразования и поместил его в переменную int. :) – Ahmad

Смежные вопросы