如何在 lajax/translatemanager 模块中更改 yii2 中的源代码翻译

How to change source translation in yii2 in lajax/translatemanager module

我在我的 Yii 2 Advanced 应用程序上安装了 this translate manager,我正在尝试翻译源代码变体。

假设我有两种语言 - 英语和德语。在我的代码中,我有 Yii::t('frontend', 'Hello')。我将它翻译成德语,如 'Guten morgen' 并且它有效(单词 'Hello' 根据当前应用程序语言而变化,现在 - 如果它是 En - 它是 'Hello' 如果它是De - 它是 'Guten morgen')。

但现在我想翻译源词 'Hello' 并且 En 变体将是 'Hi'。我这样做了,但词没有改变。我必须做什么?

Yii 2 默认情况下不会将源语言翻译成相同的目标语言,看起来就是这种情况(默认语言是 en-US 而你想设置 en)。为此,您需要在配置中将 forceTranslation 设置为 true,例如:

'i18n' => [
    'translations' => [
        '*' => [
            'class' => 'yii\i18n\DbMessageSource',
            // ...
            'forceTranslation' => true,
        ],
    ],
],