Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不同用户表的Laravel多重身份验证_Laravel - Fatal编程技术网

不同用户表的Laravel多重身份验证

不同用户表的Laravel多重身份验证,laravel,Laravel,我正在尝试在laravel中构建一个多身份验证,并为管理员和用户使用不同的表2。问题是,注册和登录表单仅使用默认的auth login/register 我尝试了一些来自web教程的示例,但没有成功 HomeController.php: 公共函数构造{ $this->middleware'auth'; } 公共功能指数{ 返回视图“主页”; } 我在Auth/RegisterController.php中添加了createAdmin函数: 受保护的函数createAdminarray$data

我正在尝试在laravel中构建一个多身份验证,并为管理员和用户使用不同的表2。问题是,注册和登录表单仅使用默认的auth login/register

我尝试了一些来自web教程的示例,但没有成功

HomeController.php:

公共函数构造{ $this->middleware'auth'; } 公共功能指数{ 返回视图“主页”; } 我在Auth/RegisterController.php中添加了createAdmin函数:

受保护的函数createAdminarray$data { $this->validator$data->all->validate; $admin=admin::创建[ 'name'=>$data['name'], 'email'=>$data['email'], 'password'=>Hash::make$data['password'], ]; 返回重定向->预期的“登录/管理”; } 我已将电子邮件验证规则更改为:

'email'=>['required','string','email','max:255','unique:users'|'unique:admins'] 路径web.php是:

路由::post'/register/admin',Auth\RegisterController@createAdmin'; 当我填写管理员注册凭据并单击注册按钮时,我收到以下消息:

Symfony\Component\Debug\Exception\FatalThrowableError函数App\Http\Controllers\Auth\RegisterController::createAdmin的参数太少,已传递0,预期正好为1


错误来自createAdmin控制器方法中的数组$data参数

通常,您希望在控制器方法中使用两种类型的参数之一:或。$data参数与这两个参数都不匹配,因此Laravel不知道如何提供它

如果要访问控制器中的请求POST数据,可以请求Lightlight\Http\request实例作为参数:

//在PHP文件的顶部导入它 使用\Http\Request; //然后更新您的方法: 公共函数createAdminRequest$request { $data=$request->all; // ... } 或者,直接使用请求帮助器:

公共函数createAdmin { $data=请求->全部; // ... }