【发布时间】:2023-04-02 14:31:01
【问题描述】:
我希望在 cakephp 的控制器中验证。虽然我的验证在模型中运行良好,但我希望在控制器中验证它而不是模型。
我在控制器中验证了什么。
$validates = array('email' => array(
'required' => array(
'rule' => array('notEmpty'),
'message' => 'A email is required'
),
'isUnique' => array(
'rule' => array('notEmpty'),
'message' => 'This email is already registered'
),
'email' => array(
'rule' => array('email'),
'message' => 'Enter valid mail address'
)
));
if ($this->User->validates($validates)) {
die("Action can be performed as validated !! Fields are correct");
} else {
die("Action can't be performed !! Fields are in-correct");
}
无论字段是否正确,它总是让我处于正确的状态。请帮忙
【问题讨论】:
-
你先设置数据了吗?
$this->User->set($this->request->data);见manual -
哦,我没有……谢谢指正。
-
请说明您在哪里看到/为什么将验证规则传递给方法 validates it's not expecting rules,这就是它不起作用的原因。
-
使用 CakePHP 烘焙控制台生成一些控制器。他们将提供示例代码,用于通过控制器中的方法进行验证。请注意,验证本身仍会在您的模型中进行。
标签: cakephp cakephp-2.3