我一直在尝试在cakephp中进行表单验证。我有一个下拉菜单,我想将其设置为必需,以便在移动到下一页之前先在下拉菜单中选择项目。但是,我无法这样做。
我想知道如何进行表单验证。我读到cakephp 2.4及以上在表单验证方面存在问题,我的是cakephp 2.8。
请解释是否应该在控制器或型号中进行?
我已阅读食谱但没有帮助。如果有人可以提供帮助,请继续使用该框架。
答案 0 :(得分:1)
在你的模型中写
public $validate = array(
'field' => array(
'rule' => 'notBlank',
'message' => 'This field is required.'
)
);
然后在你的控制器中
$this->ModelName->set($this->request->data);
if ($this->ModelName->validates()) {
// it validated logic
} else {
// didn't validate logic
}
答案 1 :(得分:0)
将其放入controller.php
function add(){
if(!empty($this->data)){
$this->{$this->modelClass}->set($this->data);
if($this->{$this->modelClass}->addValidate()){
}
}
}
将其放入model.php
function addValidate(){
$validate1 = array(
'field_name' => array(
'rule1' => array(
'rule' => 'notEmpty',
'message' => 'Please enter field_name'
)
)
);
$this->validate = $validate1;
return $this->validates();
}