2014-01-15 67 views
1

我目前的Silex和嫩枝的工作,而我遇到一個問題,即Silex的嫩枝app.request全球不工作

{{ app.request }} 

調用不返回任何東西。

這裏是我的樹枝配置

'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 }} 

和他們都沒有工作。

回答

1

我看到你完全覆蓋$app["twig"]而不是使用TwigServiceProvider創建的。請注意,它註冊了app全球(link),您需要在Twig_Environment實例上完成自己的工作。

+0

好吧,理解,我不知道是否默認添加爲全球像這樣,在我將它添加回全球后它現在有效,謝謝。 – YTKColumba

0

當您使用渲染其他控制器時可能會發生這種情況。