Validation CakePHP-在验证过程中操作数据属性

Validation CakePHP-在验证过程中操作数据属性,validation,cakephp,Validation,Cakephp,我试图在执行高级验证方法时操作$this->data属性。数据似乎在变化,但在保存时,这些变化并不适用 我的问题:我是否能够在执行验证方法时编辑$this->数据 致以最良好的祝愿, Benedikt您可能需要 $this->YourModel->create() 如果您还没有这样做。CakePHP中的大多数对象都有一个数据属性,包括模型、视图和控制器对象。从视图提交表单意味着提交的数据将在控制器操作中的$this->data中可用。当您在控制器操作中调用$this->Model-

我试图在执行高级验证方法时操作$this->data属性。数据似乎在变化,但在保存时,这些变化并不适用

我的问题:我是否能够在执行验证方法时编辑$this->数据

致以最良好的祝愿, Benedikt

您可能需要

$this->YourModel->create()

如果您还没有这样做。

CakePHP中的大多数对象都有一个数据属性,包括模型、视图和控制器对象。从视图提交表单意味着提交的数据将在控制器操作中的$this->data中可用。当您在控制器操作中调用$this->Model->save($this->data)时,CakePHP将在此传递的数据复制到模型的数据属性,然后对该数组执行验证。如果执行此操作,则此模型中的任何验证规则都应该能够影响模型的数据属性。如果此解释无法帮助您解决问题,请发布更多信息,以便我们更好地了解您的意图。

例如:$this->data['User']=$Users;只是简单的操作,谢谢。我目前正在构建一个提供私人消息的控制器。该服务应允许用户向收件人列表发送邮件地址。我想验证,如果给定的用户存在。验证和保存工作正常-我正在正确解析数据。但是我也可以向视图传递一些数据吗?我想通知用户哪个用户不存在。因此,检查“to”是否存在的模型验证规则应该将不存在的添加到名为nonExistentUsers的模型属性的数组中。然后,在您的控制器中,在验证发生后,测试$this->YourModelName->nonExistentUsers是否为空,如果不是,则将其设置为在视图中可用,然后您可以遍历它,告诉发件人哪个“to”不存在。