繁体   English   中英

Laravel 无法创建未找到的自定义 UserProvider 类

[英]Laravel can't create custom UserProvider Class not found

我正在尝试在 laravel 中创建一个自定义身份验证提供程序。 我已经在config/auth.php添加了一个新的提供者,并且还创建了一个实现Illuminate\\Contracts\\Auth\\UserProvider

但是,当我尝试将 Class 添加为AuthServiceProvider的提供程序时,它显示Class 'App\\Extensions\\CustomProvider' not found 但是当我在我的类中删除implements UserProvider ,它返回...must be an instance of Illuminate\\Contracts\\Auth\\UserProvider

我创建提供程序的代码:

Auth::provider('customProvider', function($app, array $config) {
  return new CustomProvider($app->make('request'));
});

文档没有显示类本身。

编辑:这里是我的自定义提供程序:

namespace App\Extensions;

use Illuminate\Contracts\Auth\UserProvider;

class CustomProvider implements UserProvider
{
    protected $request;

    public function __construct(Request $request) {
        $this->request = $request;
    }

    // Here the functions from the interface
    // ...
}

您忘记了use语句,因此它认为该接口在您自己的命名空间中。

很容易固定。

use Illuminate\\Contracts\\Auth\\UserProvider;

然后再次实施它,它会起作用!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM