Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » Изменение значения переменной в шаблоне [RSS Feed]

#1 Май 21, 2010 10:25:12

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

Изменение значения переменной в шаблоне

Конкретно, задача такая:
Есть шаблон, который выводит список объектов, в нем используется переменная with_select_checkboxes, которая означает нужен ли checkbox рядом с каждым объектом. В этом шаблоне инклудится этот же шаблон (рекурсия) для представления списка related objects. Так вот, в шаблоне на самом верхнем уровне checkbox'ы нужны, а для представления related objects нет.
Возможно ли изменить значение переменной with_select_checkboxes в самом шаблоне? Может быть как-нибудь с тегом with или еще что-нибудь?
Или посоветуйте пожалуйста какой-нибудь другой способ для реализации



Офлайн

#2 Май 21, 2010 13:32:46

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

Изменение значения переменной в шаблоне

А что вы уже пробовали?



Офлайн

#3 Май 21, 2010 17:46:33

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Изменение значения переменной в шаблоне

Вот, может это поможет:
Если вот это

Checkbox: {{ checkbox }}
{% if loop %}
{% with "template.txt" as filename %}
{% for i in loop %}
{% with "Off" as checkbox %}
{% with "" as loop %}
{% include filename %}
{% endwith %}
{% endwith %}
{% endfor %}
{% endwith %}
{% endif %}
положить в template.txt и сделать вот так:
from django.template import Template, Context, loader

template = loader.get_template('template.txt')
context = Context({"checkbox": "On", "loop": [1, 2, 3]})
print "\n".join([line for line in template.render(context).split('\n') if line.strip()])
то оно произведет вот такой результат:
Checkbox: On
Checkbox: Off
Checkbox: Off
Checkbox: Off



Офлайн

#4 Май 21, 2010 21:14:13

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

Изменение значения переменной в шаблоне

Daevaorn
А что вы уже пробовали?
Пробовал что-то типа такого
{% with None as with_select_checkboxes %}
...
{% endwith %}
или
{% with False as with_select_checkboxes %}
...
{% endwith %}
Вот это помогло
{% with "" as with_select_checkboxes %}
...
{% endwith %}
Спасибо



Офлайн

  • Начало
  • » Django
  • » Изменение значения переменной в шаблоне[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version