我無法弄清楚爲什麼當我用Symfony進行拼寫時,它返回的是關鍵字,而不是被傳遞的信息。我使用的symfony 2.7,這是我的配置: 我讓翻譯在我config.yml文件:翻譯symfony 2返回鍵不是翻譯
translator: { fallback: ["%locale%"] }
這是我的控制器內部功能:
/**
* @Route("/consult", name="showConsult")
* @Template("AppBundle:Admin:consult.html.twig")
*/
public function showConsult(Request $request)
{
$request->setLocale('fr');
var_dump($this->get('translator')->trans("login.version"));
return array();
}
這是我的在翻譯應用程序/資源/文件翻譯
#messages.fr.yml
login.version: Version APP
我與樹枝功能也試過:
{{"login.version"|trans}}
{%trans%}'login.version'{%endtrans%}
編輯:我也有明確的chache EDIT2:好的,我有發現$請求 - >的setLocale()不工作。如果我強制config.yml中的語言環境,它會起作用。你知道我該如何解決這個問題嗎?我已閱讀this,但他們沒有爲我工作。我正在使用Windows 10 輸出始終是關鍵。我得到「login.version」而不是「版本APP」 任何人都可以幫助我嗎?在此先感謝
該文件位於何處?確保它匹配所需的結構http://symfony.com/doc/current/book/translation.html#translation-resource-file-names-and-locations;嘗試刪除yml的所有部分,並確保其中沒有yml解析錯誤;也嘗試設置「翻譯:〜」,所以它使用默認的 – nixoschu
看起來很明顯,但以防萬一:你是否清理了緩存('php app/console cache:clean --env = dev')? –
什麼文件?我已經寫了translations.yml文件的路徑。我也試過在mybundlefolder/Resources/translations中。 config.yml文件是app/Resources/config。我曾與譯者一起嘗試過:〜並沒有工作。 – user5539797