我想验证textarea不是空的!但是这段代码不能正常工作,这并没有向我显示模型中的验证错误消息!我的代码如下,
public $validate = array(
'address' => array(
'rule' => array('validateAddress'),
'message' => 'Address is required',
),
);
public function validateAddress() {
if(empty($this->data[$this->alias]['address'])) {
debug('hi');
return true;
}
return true;
}
}
请帮我在cakephp中进行textarea验证!欢迎任何建议!
答案 0 :(得分:3)
您的自定义验证规则始终返回true
。验证失败时应返回false
:
public function validateAddress() {
if(empty($this->data[$this->alias]['address'])) {
//debug('hi');
return false;
}
return true;
}
也就是说,对于这样一个简单的规则,您应该使用核心验证规则notempty
:
public $validate = array(
'address' => array(
'rule' => 'notEmpty',
'message' => 'Address is required'
)
);
答案 1 :(得分:1)
您总是返回true
。所以它总会验证。请尝试以下方法:
public function validateAddress() {
if(empty($this->data[$this->alias]['address'])) {
debug('hi');
return false;
}
return true;
}