我想翻译我的trans_default_domain
例如:
{% trans_default_domain 'FOSUserBundle' %}
{{ 'test.trans'|trans({}, 'ProjectMainBundle') }}
所以test.trans
已在ProjectMainBundle中翻译,但我的文字中始终有test.trans
。
修改
test.trans
位于src/Project/MainBundle/Resources/translations/messages.en
它可以在任何地方使用但是当我试图通过trans_default_domain
答案 0 :(得分:6)
您正在将翻译存储在名为messages.en.yml
的文件中,这意味着根据naming conventions for translations这些翻译具有域messages
而非ProjectMainBundle
。
因此,如果您尝试使用域ProjectMainBundle
并且返回字符串本身,则翻译器不会找到翻译。
必须根据以下路径命名每个消息文件: domain.locale.loader
您的翻译应存储在@AcmeYourBundle/Resources/translations/<domain>.<locale>.yml
(或php,xliff,...)。
请记住在重命名后清除缓存。