LINUX.ORG.RU

как в bottle.py получить доступ к среде из шаблона?

 ,


0

2

Можно ли как-то получить изнутри шаблона доступ к контекстам типа request, local?

Иначе, для одной проверки в инклюдимом шаблоне мне придётся пробрасывать это во ВСЕ шаблоны, а из них уже - во ВСЕ инклюды. Огромное количество лишнего, мозолящего глаза, текста.

★★★★★

Не скажу про bottle, в tornado можно использовать конструкции вида {{имяПеременной}}, при этом модулю, который шаблоны обрабатывает, эту переменную можно передать на этапе рендера. Скорее всего тут что-то аналогичное.

Гуглится такое:

>>> from bottle import template
>>> template('Hello {{name}}!', name='World')
u'Hello World!'
alozovskoy ★★★★★
()
Ответ на: комментарий от alozovskoy

Я же написал в заголовке, что тогда это придётся делать ВЕЗДЕ :)

Мне надо те контексты, которые уже сбрасываются, достать. Возможно, с внесением изменений в сам bottle.py

buratino ★★★★★
() автор топика

для одной проверки в инклюдимом шаблоне мне придётся пробрасывать это во ВСЕ шаблоны, а из них уже - во ВСЕ инклюды

C bottle.py не работал, но в Flask'е данные в шаблон инжектятся context processor'ами.

Вот, что нашлось по запросу «bottle.py context processor»: http://stackoverflow.com/questions/9759558/include-variables-in-template-cont...

grazor ★★
()
Ответ на: комментарий от grazor

ура, спасибо! SimpleTemplate.defaults['request'] = request - работает! :)

buratino ★★★★★
() автор топика

на будущее, в таком случае всегда можно подменить функцию template своей, которая передаст нужные тебе параметры

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.