【发布时间】:2014-12-28 17:14:29
【问题描述】:
我正在尝试 Symfony 2 翻译组件。我的默认语言环境是 el_GR,我的备用语言环境是 en_US。我已经设置了 config.yml,创建了 2 个翻译文件:messages.el_GR.yml 和 messages.en_US.yml,然后清除了应用程序/缓存。我已经在两种语言环境中翻译了 Symfony 这个词。所以当我使用命令 php app/console translation:debug en_US abcNikBundle 我得到:
State | Id | Message Preview (en_US) | Fallback Message Preview (el_GR)
| Symfony | Symfony_US | Symfony_GR
所以我在树枝模板中写了
{{ 'Symfony'|trans({},'messages') }}
当我使用 en_US 语言环境时它工作正常,(它打印 Symfony_US)但是当我使用我的默认语言环境 (el_GR) 时,它打印 Symfony 而不是 Symfony_GR。可以以某种方式完成吗?
【问题讨论】:
-
尝试彻底删除缓存目录。此外,如果找不到翻译,则会以调试模式记录 - 检查您的日志以查看是否找不到翻译。此外,您不必指定“消息”,因为这是默认设置,您只需执行
{{ 'Symfony'|trans }} -
我删除了缓存目录,它成功了!非常感谢!
-
没问题!我将其添加为答案
标签: php symfony localization translation