php – 使用trans_default_domain进行Symfony2翻译

我想翻译我的twig模板中不属于我的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获取我的trans时它不起作用

解决方法:

您将翻译存储在名为messages.en.yml的文件中,这意味着根据naming conventions for translations,这些翻译具有域消息而不是ProjectMainBundle.

因此,如果您尝试使用域ProjectMainBundle并且返回字符串本身,则翻译器不会找到翻译.

Each message file must be named according to the following path:
domain.locale.loader

您的翻译应存储在@ AcmeYourBundle / Resources / translations /< domain>.< locale> .yml(或PHP,xliff,…)中.

请记住在重命名后清除缓存.

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...