我在Silex中创建了一个应用程序。我想使用Twig在我的服务中渲染模板,由Pimple加载。我需要这个邮件类。
我开始编写基于silex-skeleton的应用程序,所以我在$ app [' twig']中有一个twig环境。问题是,当我想将它传递给服务时:
//app.php
$app['someModel'] = function ($app) {
return new someModel($app['twig']);
};
当我写这样的东西时,树枝停止工作。我的所有子页面都显示:
Twig_Error_Loader:Template"(path).html.twig"未定义()。
我尝试了另一种技巧:
//app.php
$app['someModel'] = function ($app) {
return new someModel($app);
};
//someModel.php
class SomeModel
{
private $twig;
public function __construct($app)
{
$this->twig = $app['twig'];
}
}
但这也打破了树枝。我尝试将$ app [' twig']分配并克隆到另一个变量,然后它也会发生。
//app.php
$variable = $app['twig']
//app.php
$variable = clone $app['twig']
如何在Silex中使用Twig?
答案 0 :(得分:0)
$app->register(new Silex\Provider\TwigServiceProvider(),
array('twig.path' => __DIR__.'/views',
));
要了解更多信息,请查看Silex Documentation。