首页 > 解决方案 > Laravel 5.6将电子邮件字段名称更改为忘记密码的用户名

问题描述

我将忘记密码的电子邮件字段名称更改为用户名。但是当我提交表单时,它显示我出现以下错误。

"SQLSTATE[42S22]: Column not found: 1054 Unknown column 'email' in 'where clause' (SQL: delete from `password_resets` where `email` = example@gmail.com)"

那么我需要在哪个文件中使用用户名更改电子邮件?

标签: phplaravellaravel-5laravel-5.2laravel-5.6

解决方案


  • 在“auth.passwords.email”视图中将“电子邮件”更改为“用户名”

在你 ForgotPasswordController

public function sendResetLinkEmail(Request $request)
{
        $this->validate($request, ['username' => 'required'], ['username.required' => 'Please enter your username.']);

         $response = $this->broker()->sendResetLink(
            $request->only('username')
        );

        if ($response === Password::RESET_LINK_SENT) {
            return back()->with('status', trans($response));
        }

        return back()->withErrors(
            ['email' => trans($response)]
        );
}

推荐阅读