【问题标题】:Symfony FOSUserBundle Translations aren't showingSymfony FOSUserBundle 翻译未显示
【发布时间】:2014-01-11 23:17:01
【问题描述】:

我在我的 config.yml 中启用了翻译服务,清除了缓存并使用命令行界面安装了资产。

我的登录页面仍然显示“security.login.submit”。我正在使用自定义模板,它位于:app/Resources/FOSUserBundle/views/Security/login.html.twig 并包含(从 FOS 提供的模板复制):

{{ 'security.login.submit'|trans }}

我的 config.yml:

framework:
    translator:      { fallback: "%locale%" }
    default_locale:  "%locale%"

parameters.yml:

parameters:
    locale: en

【问题讨论】:

    标签: php symfony fosuserbundle


    【解决方案1】:

    我的问题是缓存没有被清除。清除缓存:

    rm -rf ./var/cache/*
    

    【讨论】:

      【解决方案2】:

      这是您自己的login.html.twig 副本吗?

      如果是这样,您是否包含了 trans_default_domain..

      {% trans_default_domain 'FOSUserBundle' %}
      

      如果不是,翻译人员将在默认的“消息”文件中查找翻译。

      【讨论】:

      • headdesk 谢谢,就是这样 :) 我会在几分钟内接受。
      • {% trans_default_domain 'FOSUserBundle' %} 必须在 {% block fos_user_content %} 内部也是正确的,这取决于它不在时发生的情况。
      • 我不确定是否诚实。我认为它只适用于它所设置的模板中的所有翻译(所以任何块,但不是必需的),但我可能错了。即便如此,我认为可以使用{{ 'security.login.submit'|trans({}, 'CUSTOM_DOMAIN | messages | validation | etc }} 更改域。
      猜你喜欢
      • 2018-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-11
      • 1970-01-01
      • 1970-01-01
      • 2018-09-29
      • 1970-01-01
      相关资源
      最近更新 更多