Laravel Spat ie Разрешение Настройка добавления модуля Team - PullRequest
0 голосов
/ 18 марта 2020

Я устанавливаю по умолчанию laravel пакет разрешений (spat ie). Здесь я собираюсь добавить одну модель, Team. Таким образом, мы можем сделать командную модель такой.

<?php

namespace App\Models;

    class Team extends BaseModel
    {

        public function users()
        {
            return $this->belongsToMany('App\Models\User', 'team_users', 'team_id', 'user_id')->withTimestamps();
        }
    }

Конечно, есть и роли пользователей, такие как master admin, admin, client, employee, user. Я собираюсь назначить разрешение команде как role - permission отношение.

Итак, я made model_has_team, team_has_permission таблица.

Schema::create($tableNames['role_has_permissions'], function (Blueprint $table) use ($tableNames) {
            $table->unsignedBigInteger('permission_id');
            $table->unsignedBigInteger('team_id');

            $table->foreign('permission_id')
                ->references('id')
                ->on($tableNames['permissions'])
                ->onDelete('cascade');

            $table->foreign('team_id')
                ->references('id')
                ->on($tableNames['roles'])
                ->onDelete('cascade');

            $table->primary(['permission_id', 'team_id'], 'role_has_permissions_permission_id_role_id_primary');
        });

И как я могу использовать это в представлении или контроллере?

user-team-permission
user-permission
user-role-permission

Для одного разрешения, я думаю, я должен рассмотреть выше три разрешения. Кто-нибудь может мне помочь?

...