[英]Laravel - verification mail non object
I'm trying to send an verification mail: 我正在尝试发送验证邮件:
This is my mail: 这是我的邮件:
{{ URL::to('/user/confirm', array($confirmation_code)) }}<br/>
My route: 我的路线:
Route::get('/user/confirm/{confirmation_code}', 'UserController@confirmEmail');
Controller: 控制器:
public function confirmEmail() {
$user = User::find(Input::get('confirmation_code'));
if($user->confirmation_code !== Input::get('confirmation_code'))
{
// Redirect to error page or something
return Response::error('404');
}
// Activate the user and clear the validation key
$user->confirmed = 1;
$user->confirmation_code = '';
$user->save();
// display success message
return View::make('pages.home');
}
Why is it saying: "Trying to get property of non-object" at this line: 为什么在这一行说:“试图获取非对象的属性”:
if($user->confirmation_code !== Input::get('confirmation_code'))
thank you for your help! 谢谢您的帮助!
Because it could not find a user in this line: 因为它在此行中找不到用户:
$user = User::find(Input::get('confirmation_code'));
Make sure your confirmation code is correct: 确保您的确认码正确:
dd( Input::get('confirmation_code') );
Also, is confirmation_code
this really your user primary key (id)? 另外,
confirmation_code
确实是您的用户主键(id)吗?
You may have to do something like: 您可能需要执行以下操作:
$user = User::where('confirmation_code', Input::get('confirmation_code'))->first();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.