Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 22, 2009 19:57:08

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

как отобразить виджет в шаблоне?

создаю виджет в виде:

from django.forms.widgets import Select
sel = Select({1:1,2:2})

далее передаю этот виджет в шаблон;
context = sel

вопрос - как его отрендерить внутри самого шаблона?



Офлайн

#2 Фев. 22, 2009 23:56:12

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

как отобразить виджет в шаблоне?

Офлайн

#3 Фев. 23, 2009 15:03:47

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

как отобразить виджет в шаблоне?

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

вообще в общем случае даже интересует такое - есть некотрый абстрактный объект который может представлять себя в хтмл вмде, его можно передавать через контекст и в самом шаблоне через {{obj}} вызывать метод его отрисовщика, подскажите кто знает как делается такое?

понятно что таое можно сделать через тег, но всеже интересная и такая возможность..



Отредактировано (Фев. 23, 2009 15:13:11)

Офлайн

#4 Фев. 23, 2009 15:41:24

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

как отобразить виджет в шаблоне?

ну так а как это в самом шаблоне вызывать?) через {{obj}} не получается..



Офлайн

#5 Фев. 23, 2009 15:51:05

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

как отобразить виджет в шаблоне?

lorien
это так в шаблоне?

Evg
ну так а как это в самом шаблоне вызывать?) через {{obj}} не получается..
обернуть надо в функцию без параметров этот render и прицепить к виджету.
from django.forms.widgets import Select
sel = Select({1:1,2:2})
sel.my_render = lambda: sel.render("sel", 1)
context["sel"] = sel
{{sel.my_render}}



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version