#1 xd04053045
自己写了的model,用到了验证,于是我这样写了下class mod_depart extends spModel
{ //类名为 mod_ 加表名构成
var $pk = "d_id";
var $table = "depart"; // 数据表名称
public $addrules = array(
'notrepeat' => array('mod_depart','is_repeat'),
);
public $verifier = array(
'rules' => array(
'd_name' => array(
'notnull' => true,
'maxlength' => 15,
'notrepeat' => true,
),
),
'messages' => array(
'd_name' => array(
'notnull' => 'Depart name can not be null.',
'maxlength' => 'Depart name can not length than 15.',
'notrepeat' => 'Depart name exist',
),
),
);
public function is_repeat($val,$right)
{
if($this->findAll(array('d_name'=>$val)))
return false;
return true;
}
}
?>
现在是我在添加数据岛depart时候用到了这个验证规则,在编辑数据的时候打算同样用这个规则,可是编辑数据的时候那个is_repeat函数总是会提醒
Depart name exist,如何让编辑的时候可以不提醒呢?
看教程说是可以给验证函数传递第三个参数,请问如何传递?
打算写成类似的函数:
public function is_repeat($val,$right,$d_id ==NULL)
{
if($this->findAll(array('d_name'=>$val)) && !$d_id)
return false;
return true;
}
那在控制器里如何$d_id (depart表主键)传递值过去呢?
2010-08-20 14:54:06