0

validates方法可以验证用户定义的数组吗?例如:

模型:

App::uses('AppModel', 'Model');
class Recipe extends AppModel {
    public $validate = array(
        'price' => 'numeric'
    );
}

在控制器中:

App::uses('AppController', 'Controller');
class RecipesController extends AppController {
    public function add() {
        if($this->request->is('post') && $this->request->data){
            $data = array('price' => $this->request->data['myprice']);
            $this->Reservation->validates($data); //validate the $data array
        }
        else{
            throw new NotFoundException();
        }
    }
}
4

2 回答 2

1

对于手动验证,你应该试试这个:

$this->Reservation->set( $data);
if($this->Reservation->validates(){
 //your code
}else{ 
    $this->validateErrors($this->Reservation);
}
于 2012-07-19T10:48:21.663 回答
0

在您的控制器中,您可以使用这样的字段列表:

            if ($this->Model->validates(array(
                    'fieldList' => array(
                        'reason',
                        'name',
                        'message',
                    )
                ))) {

                }

希望这就是你要找的。

于 2012-07-19T10:41:39.653 回答