Флажок Значение массива в Джанго - PullRequest
0 голосов
/ 08 января 2019

Я передаю массив в мое представление, используя поле ввода флажка. Как я могу получить этот массив accesses[value][value] на мой взгляд с value="1" or "0". Я также использую request.POST.getlist('accesses') на мой взгляд, но это дает мне значение, то как я могу получить массив. Пример - accesses[3][25] значения.

template.html

<input type="checkbox" name="accesses[3][25]" value="1" checked autocomplete="off">
<input type="checkbox" name="accesses[2][15]" value="1" autocomplete="off">
<input type="checkbox" name="accesses[4][95]" value="1" autocomplete="off">
<input type="checkbox" name="accesses[5][10]" value="1" checked autocomplete="off">

View.py

def AclView(request):
   accesses = request.POST.getlist('accesses')

Ответы [ 2 ]

0 голосов
/ 08 января 2019

Django не анализирует [] из имен полей для построения списков (как это делает PHP, если я правильно помню). Чтобы получить список значений, вы должны отправить его под тем же ключом. Попробуйте это:

<input type="checkbox" name="accesses" value="1" checked autocomplete="off">
<input type="checkbox" name="accesses" value="1" autocomplete="off">
<input type="checkbox" name="accesses" value="1" autocomplete="off">
<input type="checkbox" name="accesses" value="1" checked autocomplete="off">

def AclView(request):
   accesses = request.POST.getlist('accesses')
0 голосов
/ 08 января 2019

У вас нет списка, называемого доступами, у вас есть четыре отдельных входа, называемых «доступами [3] [25]» и т. Д. Поэтому для доступа к ним следует использовать эти имена.

...