cakePHP isUnique不再工作了

cakePHP isUnique不再工作了,cakephp,Cakephp,我有这个验证规则很长一段时间了,它一直正常工作,但现在不行了 public $validate = array( 'email'=>array( 'email'=>array( 'rule'=>array('email', true), 'message'=>'E-mail is not correct'

我有这个验证规则很长一段时间了,它一直正常工作,但现在不行了

  public $validate = array(
            'email'=>array(
                'email'=>array(
                    'rule'=>array('email', true),
                    'message'=>'E-mail is not correct'
                ),
                'isUnique'=>array(
                    'rule'=>'isUnique',
                    'message'=>'This email adddress is already in use'
                ),
                'notEmpty'=>array(
                    'rule'=>'notEmpty',
                    'message'=>'Insert email address'
                )
            )
我一直在测试许多可能的方法,但它们似乎都不起作用。非常感谢您的帮助

以下是控制器的添加功能:

公共功能添加(){

下面是beforeSave()的代码

以下是保存时执行的查询:

INSERT INTO `schedule`.`users` (`employee_nr`, `name`, `surname`, `email`, `phone`, `address`, `post_nr`, `city`, `role`, `company_id`, `password`) VALUES ('1', 'Name', 'Surname', 'email@email.com', '11223344', '', '', '', 'employee', 54, '389be16c83bf2e65a64f727465ec0c37a77552a5')
通过在控制器中使用进行测试,以查看其不工作的原因。
isUnique
验证规则使用
isUnique
模型方法。

尝试此方法

  public $validate = array(                
      'email' => array(
        'rule1' => array(
            'rule' => 'email',
            'message' => 'Please enter a valid email address.'
        ),
        'rule2' => array(
            'rule' => 'isUnique',
            'message' => 'That email address exists.'
        )
    ),

我尝试了创建和更新,但是在电子邮件字段中没有检查isUnique规则。即使其他所有规则都很好地工作。您的
beforeValidate()
上是否有任何内容?问题刚刚用所有必要的信息进行了更新,您是否使用隐形墨水=)?没有查询日志(这可能是更重要的信息),并且..当它“不起作用”或“不起作用”时,您不需要指明什么是
$this->request->data
实际上是指。有一件事与您的直接问题无关-如果用户的密码在任何其他保存操作中,您将重新设置密码。谢谢您的评论。已添加保存用户的查询。
INSERT INTO `schedule`.`users` (`employee_nr`, `name`, `surname`, `email`, `phone`, `address`, `post_nr`, `city`, `role`, `company_id`, `password`) VALUES ('1', 'Name', 'Surname', 'email@email.com', '11223344', '', '', '', 'employee', 54, '389be16c83bf2e65a64f727465ec0c37a77552a5')
  public $validate = array(                
      'email' => array(
        'rule1' => array(
            'rule' => 'email',
            'message' => 'Please enter a valid email address.'
        ),
        'rule2' => array(
            'rule' => 'isUnique',
            'message' => 'That email address exists.'
        )
    ),