它放在
时有用'merchant' => [
'driver' => 'session',
'provider' => 'users',
],
但是当我设置不同的表时它会显示错误
'merchant' => [
'driver' => 'session',
'provider' => 'merchants',
],
错误: CreatesUserProviders.php第40行中的InvalidArgumentException:未定义身份验证用户提供程序[]。
问题是什么你能解释一下吗? 感谢。
答案 0 :(得分:0)
您最初是否创建了商家提供商?
如果你没有
php artisan make:provider MerchantServiceProvider
然后您必须在以下位置注册您的提供商:config / app.php /
'providers' => [ App\Providers\RouteServiceProvider::class ]
答案 1 :(得分:0)
如果您想更改注册/认证表,请返回更改,您只需要更改config / auth.php文件
re.compile()
这是身份验证用户提供程序,因此如果您想要添加新提供程序,则需要向此阵列添加其他提供程序。您遇到的错误是因为您呼叫的提供商机制未在此处注册。
并检查您的/app/modelname.php是否具有如下所示的受保护表:
'providers' => [
'users' => [
'driver' => 'eloquent',
/*change this ---->*/ 'model' => App\<modelclassname>::class,
],
因此,如果要使用多个提供程序,则应在config / auth.php文件的用户提供程序部分注册提供程序。您的提供者数组应如下所示:
protected $table = 'merchant'; // ----> this is your table name
之后,您可以在撰写问题时使用提供者。
答案 2 :(得分:0)
您始终可以使用我的包https://github.com/Hesto/multi-auth并专注于您的应用程序,而不是这种烦人的配置。
答案 3 :(得分:0)
您可以使用数据库或长期关系作为驱动程序。
'branchs' => [
'driver' => 'database',
'provider' => 'merchants',
],