Cake PHP-条件验证检查

Cake PHP-条件验证检查,php,validation,cakephp,Php,Validation,Cakephp,我对蛋糕PHP相当陌生。我搜索了这个网站和许多其他网站,以及蛋糕食谱和API,寻找我问题的答案,但没有找到任何答案 我正在使用的系统使用软删除来删除用户。我正在寻找一种在用户尝试创建新帐户时使用条件验证检查的方法,以执行以下操作: 检查与电子邮件输入字段具有相同电子邮件的软删除记录。 如果发现软删除记录,则验证应通过,且软删除记录应已删除设置为false,并让用户输入的任何字段覆盖软删除记录中的现有字段。 如果该电子邮件不存在于软删除用户记录中,则应执行另一项检查,以查看该电子邮件是否存在于用户

我对蛋糕PHP相当陌生。我搜索了这个网站和许多其他网站,以及蛋糕食谱和API,寻找我问题的答案,但没有找到任何答案

我正在使用的系统使用软删除来删除用户。我正在寻找一种在用户尝试创建新帐户时使用条件验证检查的方法,以执行以下操作:

检查与电子邮件输入字段具有相同电子邮件的软删除记录。 如果发现软删除记录,则验证应通过,且软删除记录应已删除设置为false,并让用户输入的任何字段覆盖软删除记录中的现有字段。 如果该电子邮件不存在于软删除用户记录中,则应执行另一项检查,以查看该电子邮件是否存在于用户记录中。 如果电子邮件不存在,则验证应通过,并应创建一个新的用户帐户。 如果电子邮件确实存在,则验证将失败,并且此电子邮件的消息已存在于我们的记录中,请选择其他邮件或与管理员联系。 大概是这样的:

public function checkForDeleted($email) {
    // Check if email exists as a soft-deleted record
    $deleted_user = $this->findByEmailAndDeleted($email, true)
    if (empty($deleted)) {
        // If email doesn't exist as a soft-deleted record check for uniqueness
        $unique_email = $this->findByEmail($email);
        if (empty($unique_email)) {
            // If email is unique, return valid and create new user
        }
        else {
            // If email is not unique, return invalid and do nothing else
        }
    }
    else {
        // If email exists as soft deleted record, return valid and re-activate soft-deleted user
    }
}
我认为我走的是对的,我只是不知道从这里走到哪里,尽管在网上搜索了几个小时,还是找不到任何答案。我走对了吗?我需要从这里走到哪里


提前感谢您提供的任何帮助

您需要说明您正在使用的CakePHP版本。您在条件验证后: