关于 beforesave 模型回调的 Cakephp 2 验证消息
Cakephp 2 validation message on beforesave model callback
我正在使用 CakePhp 2.5,并且在 beforeSave 模型回调中,如果未提供某些信息 (MyIndex),我会 return false。
如何显示错误消息?
我试试 :
$this->validationRuleErrors = 'You need to choose MyIndex';
但是没有看到任何报错信息。
if( in_array( 'MyIndex', array_keys( $this->data) ) == FALSE )
{
$this->validationRuleErrors = 'You need to choose MyIndex';
debug($this->validationErrors);
return false;
}
您 beforeSave
中设置的 validationErrors
属性 可以从您的控制器访问。
示例控制器:
try {
$this->Model->save($data);
if (!empty($this->Model->validationErrors)) {
// just echo $this->Model->validationErrors if you don't want to use an exception
throw new Exception($this->Model->validationErrors);
}
} catch (Exception $e) {
$this->data = [
'success' => false,
'message' => $e->getMessage()
]
}
我正在使用 CakePhp 2.5,并且在 beforeSave 模型回调中,如果未提供某些信息 (MyIndex),我会 return false。
如何显示错误消息?
我试试 :
$this->validationRuleErrors = 'You need to choose MyIndex';
但是没有看到任何报错信息。
if( in_array( 'MyIndex', array_keys( $this->data) ) == FALSE )
{
$this->validationRuleErrors = 'You need to choose MyIndex';
debug($this->validationErrors);
return false;
}
您 beforeSave
中设置的 validationErrors
属性 可以从您的控制器访问。
示例控制器:
try {
$this->Model->save($data);
if (!empty($this->Model->validationErrors)) {
// just echo $this->Model->validationErrors if you don't want to use an exception
throw new Exception($this->Model->validationErrors);
}
} catch (Exception $e) {
$this->data = [
'success' => false,
'message' => $e->getMessage()
]
}