如何在整個Symfony 2.1應用程序中全局覆蓋NotBlank
約束信息This value should not be blank
?全局覆蓋symfony2.1上的NotBlank約束消息?
我試過validators.en.yml
文件,但是這隻適用於我將validation.yml
文件中的每個NotBlank約束設置爲像not.blank.field
這樣的常量 - 但修改太多了。
如何在整個Symfony 2.1應用程序中全局覆蓋NotBlank
約束信息This value should not be blank
?全局覆蓋symfony2.1上的NotBlank約束消息?
我試過validators.en.yml
文件,但是這隻適用於我將validation.yml
文件中的每個NotBlank約束設置爲像not.blank.field
這樣的常量 - 但修改太多了。
要在您的應用程序級別上觸發NotBlank
約束條件時替換This value should not be blank
消息,只需在正確的位置創建正確的翻譯文件即可。
爲簡單起見,您的區域似乎是英語(en),所以創建文件app/Resources/translations/validators.en.yml
,寫在下面幾行:
# app/Resources/translations/validators.en.yml
This value should not be blank.: Y U NO SET THE VALUE?!
第一部分具有精確匹配所需信息翻譯(在你的情況下)。
如果您有自定義的文件/文件夾層次結構,只需在<kernel root directory>/Resources/translations
下創建該文件即可。
如果你想爲另一種語言的相同的行爲(法語爲例),只需創建在同一文件夾對應的文件:
# app/Resources/translations/validators.fr.yml
This value should not be blank.: La valeur doit etre specifiee.
不要忘記加入後清除緩存新文件!
它爲什麼有效?由於Symfony2按位置優先考慮翻譯文件:http://symfony.com/doc/current/book/translation.html#translation-locations-and-naming-conventions
未經測試,但如何創建從https://github.com/symfony/複製的文件「<內核根目錄>/Resources/translations/validators.en.xlf」驗證/ blob /主/資源/翻譯/ validators.en.xlf,只是改變你想要的消息? – cheesemacfly 2013-02-20 16:39:14
它無法在validators.en.yml(或任何其他格式)上工作在messages.en.yml ..任何ideea? – 2013-02-20 16:57:48
'它對messages.en.yml有效'是什麼意思? – cheesemacfly 2013-02-20 17:15:22