symfony2 - Silex Twig app.request 全局不工作

  显示原文与译文双语对照的内容

我目前正在使用Silex和 Twig,我遇到了一个问题

 
{{ app.request }}

 

调用不返回任何内容。

这是我的Twig 配置


'twig' => $application->share($application->extend('twig', function (Twig_Environment $twig, Application $application) {
 $loader = new Twig_Loader_Filesystem(__DIR__. '/../../src/quest/view');
 $twig = new Twig_Environment($loader);
 $host = $application['request']->getSchemeAndHttpHost();
 $path = $application['request']->getPathInfo();

 $twig->addGlobal('RESOURCE', '/web/res');
 $twig->addGlobal('HOST', $host);
 $twig->addGlobal('PATH', $path);

 return $twig;
}))

我的变量名为'应用程序',而不是'应用',但我也尝试了


{{ app.request.host }}
{{ application.request.host }}

他们两个都没有。

时间: 作者:

我看到你完全覆盖了 $app["twig"],而不是使用TwigServiceProvider创建的。 注意,它注册了 app 全局( 链接 ),你需要在 Twig_Environment 实例上完成你自己的。

作者:

在使用渲染其他控制器时可能会发生这种情况。

...