Can';即使CakePhp3中没有错误,也不能保存实体
我有一个用户表,当我想保存它时Can';即使CakePhp3中没有错误,也不能保存实体,php,cakephp,cakephp-3.0,Php,Cakephp,Cakephp 3.0,我有一个用户表,当我想保存它时save()即使在调试$user时也返回null,没有错误 '[errors]' => [], 这是我的代码: $user = $this->Users->newEntity(); $tmp_hash = md5(rand(0, 1000)); $tmp_id = time(); /* Save individual data */ $user->id = $t
save()
即使在调试$user
时也返回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)代码>
现在我可以看到我的问题了。。这些问题是由于唯一验证造成的。尝试启用CakePHP-3的DebugKit,您可以在那里看到SQL语句。
debug($user->errors());