虽然这是一个老话题,但我觉得有人会得到这个错误,因为我刚刚得到它。
我们不能使用 CI set_message 函数进行 CroceryCrud 验证。因为 CroceryCrud 使用它的验证对象。
你可以编辑libraries/Grocery_CRUD.php,找到“protected function form_validation()”这一行,
在此功能下,您可以将其复制、重命名和编辑访问修改器为 public :
public function get_form_validation(){
if($this->form_validation === null)
{
$this->form_validation = new grocery_CRUD_Form_validation();
$ci = &get_instance();
$ci->load->library('form_validation');
$ci->form_validation = $this->form_validation;
}
return $this->form_validation;
}
现在,您可以在控制器中调用它:
$crud-> get_form_validation()->set_message('check_city',"invail %s");