我正在开发一个系统,其中 Phalcon 服务器负责站点前端,而 Symfony2 服务器负责内容管理。内容管理器包含一个所见即所得的编辑器,因此使用与前端相同的布局和样式显示内容。我意识到 Volt 和 Twig 非常相似,但是包含和块之类的东西有特定的语法或限制。我们可以以完全兼容的方式创建我们的模板/主题,但这不是很灵活。
有没有办法在 Symfony2 中使用 Volt 模板?还是一种自动转换模板的实用方法(这里不能手动转换)?
我认为在您的特定用例中,最实用的是将 Twig 与 Phalcon 一起使用。在您的 DI 中,您可以为此加载不同的引擎,请参阅Twig-adapter 的 Phalcon Incubator 项目。
简而言之,它归结为使用(在将 Incubator 添加到您的项目之后,例如使用 Composer):
$view->registerEngines(
array(".twig" => 'Phalcon\Mvc\View\Engine\Twig')
);
代替
$view->registerEngines(array(
".volt" => 'Phalcon\Mvc\View\Engine\Volt'
));
该链接描述了更完整的分步指南。