簡體   English   中英

symfony子請求/嵌入式控制器如何設置正確的語言環境

[英]symfony subrequest/embedded controller how to set right locale

我試圖根據本菜譜文章分離一些組件(例如,導航欄)。 但是,我在設置語言環境時遇到困難。 在該示例中,控制器沒有路由。 我認為這應該是這樣,因為單獨的導航欄不應具有路線。 但是,然后將子請求的語言環境設置為默認值,在我的情況下為“ en”。 有趣的是,翻譯器組件仍然有效,即獲取正確的字符串。 但是,我的自定義服務使用setter注入從當前請求中獲取當前語言環境,現在在子請求進行過程中始終使用默認語言環境。

使此工作正常的正確方法是什么? Symfony的翻譯器組件如何獲取當前語言環境?

編輯

顯然,翻譯器組件僅設置最外層請求的語言環境。 一旦設定,就設定。 我可能應該以同樣的方式。

您只需傳遞當前請求,即可傳遞_local之類的參數,...

例:

{% render "MyBundle:Controller:someAction" with { 'originalRequest' : app.request } %}


public function someAction(Request $originalRequest)
{
    // do something
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM