您好我在模型中进行了自定义验证。如何从控制器中访问结果($ visitor)?
模型:
<?php
class Visitors extends AppModel
{
var $name = 'Visitors';
var $validate = array(
'xxx' => array(
'rule' => array('checkxxx'),
'message' => 'yyy.'
)
);
function checkIxxx($check){
$visitor = $this->find('first', array('conditions' => $check));
return $visitor;
}
}
&GT;
在我的控制器中我想要这个:
function start() {
$this->Visitors->set($this->data);
if($this->Visitors->validates())
{
if($this->Visitors->xxx->type == 'value') //this is a value from the $visitor array in the model**
{
//do something
}
}
这可能吗?
答案 0 :(得分:1)
更新为相关答案,道歉。
//Model
var myField = 'invalid';
function myValidation($var){
if($var === true){
// Passed your validation test
$this->myField = 'valid';
}else{
$this->myField = 'invalid';
}
}
// Controller
$this->Model->set($this->data);
$this->Model->validates($this->data);
if($this->Model->myfield == 'valid'){
// Field has passed validation
}
您需要使用
$this->Model->invalidFields()
答案 1 :(得分:0)
PS:你不遵循蛋糕惯例
该模型应为“访客”(单数)