我正在尝试为set_rule设置验证消息....这可能吗?
我试过这个
$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'regex_match[/^\d{0,4}(\.\d{1,2})?$/]');
$this->form_validation->set_message('payment_amount', 'This is a test');
我的消息没有改变。
有什么想法吗?
答案 0 :(得分:2)
您可以通过为规则创建功能来设置自定义验证错误消息。
此代码未经测试。
public function payment_amount($str)
{
if (preg_match('[/^\d{0,4}(\.\d{1,2})?$/]', $str)
{
$this->form_validation->set_message('payment_amount', 'The %s field has an error');
return FALSE;
}
else
{
return TRUE;
}
}
我们CI的回调如下:
$this->form_validation->set_rules('payment_amount', 'Payment Amount', 'callback_payment_amount')
答案 1 :(得分:0)
创建MY_Form_validation.php&把你的代码放进去。
使用文档(http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html)
扩展本地库
如果您只需要为现有库添加一些功能 - 可能添加一两个功能 - 那么用您的版本替换整个库就太过分了。在这种情况下,最好只是扩展类。扩展一个类几乎与用一些例外替换类相同:
类声明必须扩展父类。 您的新班级名称和文件名必须以MY_为前缀(此项目是可配置的。请参见下文。)。 例如,要扩展本机Email类,您将创建一个名为application / libraries / MY_Email.php的文件,并使用以下命令声明您的类:
class MY_Email extends CI_Email {
}
注意:如果需要在类中使用构造函数,请确保扩展父构造函数:
class MY_Email extends CI_Email {
public function __construct()
{
parent::__construct();
}
}