如何使用带有自定义用户名列的 Laravel Passport

2021-12-29 00:00:00 oauth-2.0 php laravel laravel-passport

现在我正在使用类似的东西来验证我的基本站点上的用户:

Now I'm using something like that for authenticating the user on my base site:

if (Auth::attempt($request->only(['id', 'password']))) {
            //
}

如何修改此代码以使用自定义列作为用户名?https://laravel.com/docs/5.3/passport#password-grant-tokens

How can I modify this code for using custom column as username? https://laravel.com/docs/5.3/passport#password-grant-tokens

推荐答案

您可以在用户模型中使用 findForPassport 方法.

You can use findForPassport method in your user model.

该方法以用户名为参数,返回用户模型

This method take username as argument, and return user model

例如:

class User extends Authenticatable
{
    use HasApiTokens, Notifiable;

    // ... some code

    public function findForPassport($username) {
        return $this->where('id', $username)->first();
    }
}

相关文章