Laravel:密码重置针对用户

时间:2016-05-29 12:45:23

标签: php laravel passwords laravel-5.2

我有以下代码将密码重置电子邮件发送到正在运行的用户电子邮件:

$response = $this->passwords->sendResetLink($request->only('email'),function($message)
{
    $message->subject('Password Reminder');
});

我想要的是用户应该写他们的username而不是电子邮件,我将根据该用户名检查电子邮件,并发送电子邮件。所以我想出了这个想法。

    $usernameToEmail = User::where('name','=', Input::get('username'))->first();  

    $response = $this->passwords->sendResetLink(['name' => $usernameToEmail],function($message)
    {
        $message->subject('Password Reminder');
    });

哪个也不起作用。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

您已关闭,但您的$usernameToEmail变量包含User对象,而不是电子邮件字符串。您很可能只需要在链中添加一个方法:

$usernameToEmail = User::where('name','=', Input::get('username'))->first()->email;