首页 > 解决方案 > 在 Laravel 中注册用户为管理员

问题描述

我目前的项目是一个学校管理系统,我使用的是 Laravel 5.6(这是我的第一个 Laravel 项目)。我一直在尝试从我的应用程序管理员区域内的一个小表单注册用户。

我已经为管理区域设置了路线(视图名称不是英文的,很抱歉):

// Admin
Route::middleware(['auth'])->group(function () {
  Route::view('/admin', 'profiles.admin.admin_gerencia_cadastro');
  Route::view('/admin/gerencia/cadastro', 'profiles.admin.admin_gerencia_cadastro');
  Route::post('/admin/gerencia/cadastro', 'RegController@store');
  Route::view('/admin/gerencia/relatorios', 'profiles.admin.admin_gerencia_relatorios');
  Route::view('/admin/ped/', 'profiles.admin.admin_ped');
});

发布路线(从上数第三个)应该处理用户注册并导致RegController以下方法:

  public function store()
     {

         $this->validate(request(), [
           'name' => 'required|string|max:255',
           'email' => 'required|string|email|max:255|unique:users',
           'password' => 'required|string|min:6|confirmed',
         ]);

         $user = User::create(request(['name', 'email', 'password']));

         return redirect()->to('/admin/gerencia/cadastro');
     }

它应该存储新的用户数据并将管理员重定向回/admin/gerencia/cadastro. 但是,当提交表单时,数据不会存储在数据库中,而是被重定向到主页。我尝试了不同的方法,查阅了文档,但到目前为止还没有成功。

任何帮助都感激不尽。

编辑:

按照下面的要求来这里发布表格,但我发现了自己的错误 - 一个菜鸟:表格操作错误。对不起,伙计们,我会结束这个问题:)

标签: laravel

解决方案


您的要求是否达到store()方法?

试着写

print_r($_REQUEST);exit;  

在方法的第一行。如果它没有到达那里,那么把下面的路线放在你的路线组的所有其他路线之前:

Route::post('/admin/gerencia/cadastro', 'RegController@store');

查看此链接以更好地了解 laravel 中的路由。


推荐阅读