Как интегрировать Усы с Symfony? - PullRequest
3 голосов
/ 07 июля 2011

Я бы хотел заменить шаблон по умолчанию в symfony1.4 на Усы. К моему удивлению, я не могу найти соответствующий подход с помощью поиска Google.

Тогда, я полагаю, я могу сделать это простым способом.

public function executeIndex(sfWebRequest $request)
{
include('/path/to/Mustache.php');
   $m = new Mustache();
   echo $m->render('Hello {{planet}}', array('planet' => 'World!'));

   return sfView::NONE;
}

Это выглядит неуклюже. Основные проблемы:

Где хранить шаблон усов (в моем случае «Hello {{planet}}»)?

Можно ли заменить стандартный обработчик вида? чтобы я мог поместить шаблон усов в папку шаблонов и быть прозрачным для действий?

Спасибо

Ответы [ 2 ]

5 голосов
/ 07 июля 2011

Я думаю, что лучший способ реализовать это - создать новую реализацию sfView. В настоящее время sfPhpView является классом по умолчанию для рендеринга вывода. Вы можете расширить этот класс и использовать усы для рендеринга.

Вы можете посмотреть sfSmartyPlugin , чтобы увидеть, как они реализовали Smarty Template Engine ...

2 голосов
/ 07 июля 2011

Может быть, вы можете взглянуть на веточку.Он похож на musatche и имеет хорошую интеграцию с Symfony (ветка сделана Fabien Potencier, создателем Symfony).Это плагин для Symfony 1.x: https://github.com/henrikbjorn/sfTwigPlugin

...