Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 7, 2009 12:49:36

Стас Агарков
От:
Зарегистрирован: 2009-11-07
Сообщения: 12
Репутация: +  0  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

Подскажите, пожалуйста, какой-нибудь простой шаблонизатор для питона, чтобы хотя бы понимал условную конструкцию.
Например, в html-шаблоне написать <p>${if notFound : print “ничего не найдено” }</p>



Офлайн

#2 Ноя. 7, 2009 13:58:55

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

Шаблонизатор для питона

http://www.makotemplates.org/
Впрочем, вкусовые предпочтения могут различаться.



Офлайн

#3 Ноя. 8, 2009 16:43:32

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

Шаблонизатор для питона

Я jinja2 использовал.

Офлайн

#4 Ноя. 14, 2009 12:33:55

bw
От:
Зарегистрирован: 2007-09-26
Сообщения: 938
Репутация: +  20  -
Профиль   Адрес электронной почты  

Шаблонизатор для питона

Пользовался ZPT, Nevow, Django, сейчас работаю с Genshi.
Пока выбор остановил на Genshi, но посматриваю в сторону XSLT. Так как с ZPT работал довольно давно, нужно бы освежить память. Вообще, разрываюсь между несколькими движками. Фаворитами для себя считаю Genshi, XSLT и ZPT.

> <p>${if notFound : print “ничего не найдено” }</p>
Считаю это дурнейшим вкусом. Еще один PHP хочешь получить? Не должен в шаблоне присутствовать код. Хотя полностью от императивщины избавиться очень сложно.

p.s. И шаблонов много и написано про них не мало, можно, например вот это почитать – http://habrahabr.ru/blogs/about_cms/22018/

..bw



Отредактировано (Ноя. 15, 2009 07:20:35)

Офлайн

#5 Ноя. 14, 2009 15:16:57

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

пробовал mako и jinja2, сейчас юзаю джинжу

Офлайн

#6 Июнь 19, 2010 17:44:34

Truewar
От:
Зарегистрирован: 2010-05-01
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

bw
Считаю это дурнейшим вкусом. Еще один PHP хочешь получить? Не должен в шаблоне присутствовать код. Хотя полностью от императивщины избавиться очень сложно.
Почему дурнейшим вкусом? Почему не должен присутствовать код?

EDIT:
Спрашиваю из интереса. Моя web-платформа почти готова. Вот думаю насчёт шаблонизатора…
Буду рад, если объясните в чём преимущества и недостатки тех шаблонизаторов, которые вы используете.



Отредактировано (Июнь 19, 2010 17:48:12)

Офлайн

#7 Июнь 19, 2010 18:53:23

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

Truewar
Почему не должен присутствовать код?
Чтобы человек, имеющий доступ к шаблону не мог обрушить всю систему. Код в шаблоне опасен инъекциями.

А мне XML-подобные шаблоны не нравятся. Монстрообразны.

Вообще темя шаблонов вроде бы изъезжена, но все равно остается актуальной, т.к. ни один из существующих шаблонов не является “серебряной пулей” :)



Офлайн

#8 Июнь 19, 2010 19:44:45

Truewar
От:
Зарегистрирован: 2010-05-01
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

Lexander
Truewar
Почему не должен присутствовать код?
Чтобы человек, имеющий доступ к шаблону не мог обрушить всю систему. Код в шаблоне опасен инъекциями.

А мне XML-подобные шаблоны не нравятся. Монстрообразны.

Вообще темя шаблонов вроде бы изъезжена, но все равно остается актуальной, т.к. ни один из существующих шаблонов не является “серебряной пулей” :)
Но ведь этот код условный. Он же парсится регулярными выражениями, а занчит будет выполнено только то, что предусмотрено.
Я пока не пойму никак принципиальной разницы между записью xml`образных языков шаблонов и языков с {%} =)



Офлайн

#9 Июнь 19, 2010 23:53:47

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

Truewar
Я пока не пойму никак принципиальной разницы между записью xml`образных языков шаблонов и языков с {%} =)
принцип везде одинаков, т.е. цель. тут надо смотреть на удобство, функционал и скорость.
по моему генши (xml) являеться тормознутым шаблонизатором.

Офлайн

#10 Июнь 20, 2010 09:19:56

Truewar
От:
Зарегистрирован: 2010-05-01
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

Шаблонизатор для питона

Тогда вырисовывается интересный вариант:

1. Принимаем некий синтаксис шаблонов, понятный дезигнерам
2. Парсим его, но не каждый раз при обращении к страничке, а один раз, формируя не хтмл, а код Python и пишем его в отдельный файл. Получая что-то вроде модуля шаблона. Этот модуль можно будет импортировать.

На выходе получаем очень хорошую скорость работы.

Кто что думает по этому поводу?



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version