Dow*_*wny 5 php yii yii2 yii2-advanced-app
我想在整个应用程序中更改英文验证消息。
所以例如:
显示“需要字段”而不是“需要出生日期”。
我尝试将 I18N 组件配置如下:
'i18n' => [
'translations' => [
'*' => [
'class' => 'yii\i18n\PhpMessageSource',
'basePath' => '@common/messages',
'sourceLanguage' => 'en',
'fileMap' => [
'yii' => 'yii.php',
]
// 'on missingTranslation' => ['app\components\TranslationEventHandler', 'handleMissingTranslation']
],
],
Run Code Online (Sandbox Code Playgroud)
但不工作
要为整个应用程序全局更改语言,请将语言添加到您的配置中:
return [
...
'language' => 'ru',
...
],
Run Code Online (Sandbox Code Playgroud)
这是俄语,你可以设置任何你想要的语言。但是框架消息只翻译成流行语言,你可以打开vendor/yiisoft/yii2/messages文件夹查看完整列表。您也可以参考IETF 语言标签页面。
要仅为特定验证规则更改消息,请使用消息选项:
['attributeName', 'validatorName', 'message' => 'Your customized message'],
Run Code Online (Sandbox Code Playgroud)
请注意,如果您的应用程序是多语言的,您可以在此处使用国际化(Yii::t())。