2012-02-16 70 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

相關問題