Yii2:如何修改系统消息翻译文件

zy1mlcev  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(168)

“问题是”
Yii为系统消息提供了自己的翻译,例如,当我的网站语言改为德语时,'File upload failed'被翻译为'Das Hochladen der Datei ist gescheitert.'。这很好,但是有些翻译在语法上不正确,我想修改一下。
我找到了Yii用来处理翻译的消息文件:yiisoft>yii2>messages>de>yii.php,但我不能改变它作为供应商目录的一部分,我所做的任何改变都将在下一次Yii更新时被覆盖。
"我所做的一切"
我试着按照用户在这里列出的说明去做:https://forum.yiiframework.com/t/translating-system-messages/29733。这涉及到复制yii.php,将其放在一个新目录中,进行所需的转换更改,然后在config中将coreMessages指向它。我已经执行了所有这些步骤,但它似乎实际上没有为我做任何事情。

fcwjkofz

fcwjkofz1#

正如《指南》中所述:
Yii提供了验证错误的默认翻译消息和一些其他字符串。这些消息都在yii类别中。有时候你想为你的应用纠正默认的框架消息翻译。为了做到这一点,配置i18 n application component如下:

'i18n' => [
    'translations' => [
        'yii' => [
            'class' => 'yii\i18n\PhpMessageSource',
            'sourceLanguage' => 'en-US',
            'basePath' => '@app/messages'
        ],
    ],
],

现在,您可以将调整后的翻译放置到@app/messages/<language>/yii.php
顺便说一句-你提到
[...]翻译在语法上不正确[...]
如果你能解决这个问题,这对Yii 2和它的社区都是很好的--请分叉this file并发送PR。

相关问题