我是 Laravel 6 的新手。我在 Laravel 中安装了默认身份验证。我想拥有多个用户。
- 管理员 - 此用户可以监控仪表板和其他页面中的所有内容。
- Maker - 此用户只能创建一个作业。
- 批准人 - 此用户只能批准工作,但不能创建工作。
- 查看者 - 此用户只能查看应用程序的所有页面。
除此之外,我需要为每个公司自动生成一个 OPGROUP ID。我希望登录的用户只看到他们帐户下保存的数据。
你能帮我实现我的目标吗?
我是 Laravel 6 的新手。我在 Laravel 中安装了默认身份验证。我想拥有多个用户。
除此之外,我需要为每个公司自动生成一个 OPGROUP ID。我希望登录的用户只看到他们帐户下保存的数据。
你能帮我实现我的目标吗?
我们必须按照以下步骤
首先,我们必须使用以下命令创建一个表,我们将在其中存储角色
php artisan make: migration create_admins_table --create=admins
创建迁移后,我们将添加列
$table->string('name');
$table->string('email')->unique();
$table->string('password');
$table->rememberToken(); // I put this linke incase if it was missing
然后我们将运行迁移
php artisan migrate
然后我们将运行以下命令
php artisan make: model Admin
如果没有,不要忘记在 admin.php 模型中添加以下代码
protected $guard = 'admin';
protected $fillable = [
'name', 'email', 'password',
];
我们必须在警卫之后的config/auth.php文件中设置我们的警卫,我们应该添加以下代码
'admin' => [
'driver' => 'session',
'provider' => 'admins',
],
'admin-api' => [
'driver' => 'token',
'provider' => 'admins',
],
在提供者之后,我们应该添加以下代码
'admins' => [
'driver' => 'eloquent',
'model' => App\Admin::class,
],
让我们创建控制器
php artisan make: controller AdminController
让我们在web.php中创建一个名为 admin 和 route 的视图
Route::get()'/admin',AdminController@index)
并在管理控制器中添加以下代码
public function __construct()
{
$this->middleware('auth:admin');
}
您可以在表中插入用户角色(Admin、Maker、Approver、Viewer)并将其定向到您想要的视图