【问题标题】:Symfony 2 - Translation not working (xliff)Symfony 2 - 翻译不起作用(xliff)
【发布时间】:2015-03-23 10:53:12
【问题描述】:

我已经阅读了大量关于 Symfony 2 翻译的答案和教程,但我仍然无法使用它。没有显示错误,但消息没有在 twig 模板中翻译(也没有通过测试 $this->get('translator')->trans('...') )。 xliff 文件似乎已加载,因为如果我故意添加错误的字符,标记 Symfony 会给我一个错误。

这是我的设置:

app/Resources/translations/messages.en.xliff

config.yml

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

parameters.yml

locale: en

messages.en.xliff 的内容

<?xml version="1.0"?>
<xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
    <file source-language="en" datatype="plaintext" original="file.ext">
        <body>
            <trans-unit id="1">
                <source>test.message</source>
                <target>TRANSLATED TEST</target>
            </trans-unit>
        </body>
    </file>
</xliff>

运行后还是不行

php app/console cache:clear

在我的树枝模板中(它是一个包含的模板......)

{{ "test.message"|trans }}

有什么想法吗? PS:我没有从 liip-imagine Bundle 中安装其他 Bundle。任何帮助将不胜感激!

【问题讨论】:

    标签: symfony translation xliff


    【解决方案1】:

    我通过将 symfony/translation 添加到 composer 然后更新 symfony 并清除缓存来解决我的问题。

    composer require symfony/translation
    
    php app/console cache:clear
    

    对于那些偶然发现这篇文章的人,这里有一些你在尝试使翻译工作时可能遇到的问题和需要检查的事情(基于我所有的阅读)

    • 检查作曲家的 symfony/翻译
    • 检查 config.yml 和 parameters.yml(如初始帖子所示)
    • 检查 Bundle/Resources/translations/ 与 app/Resources/translations/ 中的 /messages.[locale].xliff 是否覆盖(或 o
    • 添加新翻译文件时始终清除缓存

    【讨论】:

    • 酷,我遇到了同样的问题,你节省了我的时间,谢谢
    猜你喜欢
    • 1970-01-01
    • 2013-10-09
    • 2017-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-13
    相关资源
    最近更新 更多