我正在尝试将Laravel(Illuminate \ Foundation \ Auth \ SendsPasswordResetEmails)中的重置密码重用到我正在使用的表单中。
控制器
public function resetPassword($id)
{
$user = DB::table('users')->where('id', $id)->first();
SendsPasswordResetEmails::sendResetLinkEmail($user->email);
return back()->with('success', 'Password has been sent on email.');
}
我得到的错误:
非静态方法 照亮\ Foundation \ Auth \ SendsPasswordResetEmails :: sendResetLinkEmail() 不应被静态调用
答案 0 :(得分:1)
如错误所示,您不应为sendResetLinkEmail
函数调用静态方式。您可以使用以下代码:
public function resetPassword($id)
{
$user = DB::table('users')->where('id', $id)->first();
$sendResetObject = new SendsPasswordResetEmails();
$sendResetObject->sendResetLinkEmail($user->email);
return back()->with('success', 'Password has been sent on email.');
}
希望它对您有帮助。