Проблема в том, что в этом коде:
args = {'form': form, 'Residential': zones['Residential'],
'School': zones['School'], 'Religious': zones['Religious'],
'Childcare': zones['Childcare'], 'Park': zones['Park']}
return render(request, self.template_name, args)
нет переменной с именем args
, передаваемой шаблону. Переменные, доступные в шаблоне, являются в точности ключами словаря, который вы здесь назвали args
- так form
, School
, Religious
, Childcare
и Park
. Шаблон ничего не знает об имени переменной, которое вы выбрали для использования в самом словаре (на самом деле здесь нет ничего необычного в том, чтобы передавать здесь словарь словаря без имени переменной - хотя вполне законно поместить его в переменную, если это более удобно) .
Таким образом, условия {% if args %}
всегда интерпретировались как False
, потому что args
не существует в том, что касается шаблона.
И есть еще одна ошибка: в языке шаблонов Django, в отличие от самого Python, доступ к любому свойству любого рода осуществляется через точечную запись, а не в квадратных скобках. Так что Childcare[0]
не будет работать вообще - вместо этого вам нужно сделать Childcare.0
.
В официальной документации есть много информации о языке шаблонов Django. .
Вики CouchDB является окончательным источником информации. Выполняемая книга CouchDB , скорее всего, заменит ее как лучший начальный ресурс после его завершения. Большинству людей кажется, что самой трудной частью CouchDB является парадигма карты / сокращения. Интерактивный симулятор CouchDB от Mu Dynamics является отличным инструментом обучения для понимания парадигмы карты / сокращения в CouchDB.