Шаблонизаторы: Twig

 
+
-
edit
 

Balancer

администратор
★★★★★
Прикрутил (пока не закоммичено, т.к. не доведено до конца) шаблонизатор Twig.

Шаблонизатор интересный: быстрый, фичастый, грамотно написанный.

Есть некоторые недоработки по синтаксису. Передача именованных параметров пока хромает. Например, загрузка модуля (пусть для примера - навигация, «хлебные крошки»), что на Smarty пишется так:

{module class="nav_top" id=$this}

На twig нельзя использовать знак равенства. Только переписав лексический парсер. (Хотя, может, так и сделать? Парсер там, вроде бы, заменяемый). Автор же предлагает конструкцию, типа:

{module class as "nav_top" id as this}

Некрасиво.

Я для себя пока сделал так:

{module class:"nav_top" id:this}

Работает.

Для полноценного функционирования требуется переписывание массы модулей, плагинов, модификаторов со Smarty на сабж. Плюс введение Twig'а сподвигло меня, наконец, на рефакторинг механизма рендеринга. Вот закончу с последним - можно будет и Twig закоммитить :)
 
+
-
edit
 

Balancer

администратор
★★★★★
BORS PHP Smarty Twig шаблонизаторы
Twig уже 1.0.0RC2, а до сих пор настолько сырой, что в исходном виде принципиально не работает, будучи распакован в каталог, имя которого отличается от «Twig».

Начал понемногу рефакторить один из последних «плохомодульных» кусков кода многолетней давности. К которому гвоздями прибит Smarty2. Кстати, Smarty3 заметно приятнее, чем Smarty2. Бенчить же их все буду позже, когда завершу рефакторинг.

// Транслировано с juick.com
 
+
-
edit
 

Balancer

администратор
★★★★★
fail smarty web-dev
Разработчики Smarty при исправлении бага #177 в 3.1.17 сделали огромную опу — они имя файла в {block} пропустили через real_path. Я несколько часов угрохал, пока понял, почему у меня часть шаблонов, отдаваемых через кастомные ресурсы стала выбрасывать «Missing template name». Ну как так писать можно? o_O С одной стороны, конечно, это первая подлянка такого рода от этой команды за весь десяток лет, что с ними работаю, с другой стороны баг совсем уж тупой. Придётся теперь тестами и работу со Smarty покрывать и проверять на тестовой машине перед каждым обновлением Composer :-/

Пока тупо откатился на 3.1.16

// Транслировано с juick.com
 

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru