Codeigniter在不使用回调函数的情况下编辑表单时检查唯一值

时间:2014-06-13 13:40:59

标签: validation codeigniter-2 unique codeigniter

Codeigniter在编辑表单时检查唯一值。

编辑表单时,它会检查当前行,并且它已经存在用户名。所以如何避免它。并且不要检查当前的记录。

那么如何在CI_Form_Validation类函数中将id传递给is_unique函数并添加条件?

请参阅下面的代码:

$this->custom_validation->set_rules('username','Username',
                    'trim|required|max_length[30]|is_unique[adminuser.username]');

1 个答案:

答案 0 :(得分:1)

只有在该字段的值发生变化时才会进行唯一验证,即

$old_value='old value';
if ($posted_value!=$old_value) {
  $this->custom_validation->set_rules('username','Username',
                    'trim|required|max_length[30]|is_unique[adminuser.username]');

} else {
  $this->custom_validation->set_rules('username','Username',
                    'trim|required|max_length[30]);
}