2012-02-16 40 views
6

在symfony 2中,我想要一个特定的环境使用特定的布局,另一个使用另一个布局。dev和prod环境使用不同的模板布局

什么是最好的方法来做到这一点?

为了进一步阐明,假设我有一个“prod_one”环境和一个“prod_two”环境。 prod_one environnment必须在呈现的html页面中使用某些特定的标题,而prod_two环境需要不设置这些标题。

谢谢!

回答

15

在控制器,你可以找出环境正在使用的内核服务” getEnvironment方法使用了什么:

$env = $this->get('kernel')->getEnvironment(); 
if ($env == "prod_one"){ 
    //$response->header->set(...); 
    //return $this->render(...); 
} else if ($env == "prod_two"){ 
    // ... 
} 

在树枝:您可以使用全局树枝变量 - app.environment

{% if app.environment == 'prod_one' %} 
    {# Content for prod_one env #} 
{% elseif app.environment == 'prod_two' %} 
    {# Content for prod_two env #} 
{% endif %} 
+0

这就是它!我一定在官方文档中错过了它!谢谢 – Saze 2012-02-18 18:51:59

相关问题