3 回答
TA贡献1841条经验 获得超3个赞
您可能有一列email_verified_at存储验证电子邮件地址的日期,默认情况下,null这意味着用户未通过验证。在您SocialController@createUser将其设置为当前日期:
$user = User::create([
'name' => $getInfo->name,
'email' => $getInfo->email,
'provider' => $provider,
'provider_id' => $getInfo->id,
'email_verified_at' => now()
]);
TA贡献1805条经验 获得超9个赞
您可以使用 markEmailAsVerified()
$user = User::create([
'name' => $getInfo->name,
'email' => $getInfo->email,
'provider' => $provider,
'provider_id' => $getInfo->id,
]);
$user->markEmailAsVerified();
TA贡献1845条经验 获得超8个赞
不要像@Raftel 提到的那样使用它!当您添加email_verified_at
到$fillable
变量时,黑客可以通过发送隐藏的输入(例如<input type="hidden" name="email_verified_at" value="<?php echo now() ?>"/ >
...
您可以在调用的雄辩模型上使用未记录的方法forceFill()
:https ://www.mike-griffiths.co.uk/blog/laravels-forcefill-and-forcecreate/
- 3 回答
- 0 关注
- 153 浏览
添加回答
举报