可以';t保存实体即使CakePhp3中没有错误


Can't save Entity Even there is no Errors in CakePhp3

I Have user表,当我想保存它时,即使在调试$user时,save()也返回null,没有错误。。

'[errors]' => [],

这是我的代码:

        $user = $this->Users->newEntity();
        $tmp_hash = md5(rand(0, 1000));
        $tmp_id = time();
        /* Save individual data */
        $user->id = $tmp_id;
        $user->first_name = (!empty($user_profile->firstName)) ? $user_profile->firstName : "";
        $user->last_name = (!empty($user_profile->lastName)) ? $user_profile->lastName : "";
        $user->username = (!empty($user_profile->lastName) && !empty($user_profile->lastName)) ? $user_profile->firstName . "." . $user_profile->lastName : "";
        $user->avatar = (!empty($user_profile->photoURL)) ? $user_profile->photoURL : "";
        $user->role = "public";
        $user->provider = $provider;
        $user->provider_uid = $user_profile->identifier;
        $user->gender = !empty($user_profile->gender) ? (($user_profile->gender == 'male') ? 'm' : 'f') : "";
        $user->email = !empty($user_profile->email) ? $user_profile->email : "";
        $user->password = $user_profile->identifier;
        $user->link = $user_profile->profileURL;
        $user->avatar = $user_profile->photoURL;
        //$user->confirm_password = $user_profile->identifier;
        $user->tmp_hash = $tmp_hash;
        $user->isverified = (!empty($user_profile->emailVerified)) ? 1 : 0;
        $user = $this->Users->patchEntity($user, $this->request->data);
        debug($user);
       $this->Users->save($user);
       //debug($this->Users->invalidFields()); // he don't know invalidFields()

如何显示sql语句或其他内容以进行调试并找到问题?死亡('2');

我找到了解决方案。。问题是errors()在保存之前不包含任何消息。。但保存后会显示错误。。喜欢这样:$this->Users->save($user);

debug($user->errors()); 

现在我可以看到我遇到的问题了。。这些问题是由于独特的验证。。