是否有翻译CodeIgniter的表单验证错误消息而不触及系统文件?
答案 0 :(得分:28)
如果您正在谈论实际翻译为其他语言,可以通过将配置值$config['language']
设置为您想要的语言来完成。如果您不想更改实际的config.php文件,可以通过使用Config对象的set_item()
函数来实现,如下所示:
$this->config->set_item('language', 'spanish');
请参阅:CodeIgniter Doc for the Config Class
这假设您的language
目录中有一个至少包含form_validation_lang.php
文件的西班牙语目录。
但是,如果您只想为Form_validation对象创建自定义消息,则可以从form_validation_lang.php
目录复制system\language
文件并将其移至application\language
目录。您现在可以编辑新语言文件,使其反映您想要的任何不同消息。您还可以通过从application/language
目录中删除文件来轻松恢复默认消息。
另一种方法是,如果您不想触摸language
文件,则手动覆盖消息。您可以通过Form_validation
库对象执行此操作,如下所示:
$this->form_validation->set_message('required', 'This is a required item!');`
答案 1 :(得分:0)
如果您需要为某个特定规则的特定字段设置自定义错误消息,请使用set_rules()方法:
$this->form_validation->set_rules('field_name', 'Field Label', 'rule1|rule2|rule3',
array('rule2' => 'Error Message on rule2 for this field_name')
);
这将独立解决您的所有字段问题。 :)