我想在一些小枝模板上做一些i18n。在index.php文件相关的代码如下:小枝国际化:意外的标签名称“反”
// Twig
$app->register(new Silex\Provider\TwigServiceProvider(), array(
'twig.path' => __DIR__ . '/../src/views',
));
$twig = new \Twig_Environment($app['twig.loader.filesystem']);
$twig->addExtension(new \Twig_Extensions_Extension_I18n());
// User Controller Service Provider for SimpleUser
$app->register($u = new SimpleUser\UserServiceProvider());
$app['twig.loader.filesystem']->addPath(__DIR__.'/../src/views/user','user');
$app['user.controller']->setLayoutTemplate('layout.twig');
$app->mount('/silex-ror/user', $u);
然后,在树枝模板被渲染我说:
<h1>{% trans %}List users{% endtrans %}</h1>
但我得到一个错误:
Unexpected tag name "trans"
由于添加扩展名时我没有遇到任何错误,我假设在我尝试渲染模板时完全忽略它,但我不确定我在哪里犯了错误。
任何帮助表示赞赏。
对不起,回答我的问题看,但似乎我解决它,所以我想在这里分享的解决方案。然而,我仍然不是100%确定这是如何工作的: $ app ['twig'] = $ app-> share($ app-> extend('twig',function($ twig,$ app){ $ twig-> addExtension(new Twig_Extensions_Extension_I18n()); return $ twig; })); 它看起来像我以前的代码只是没有添加扩展到适当的环境。 – LocoNeko73