Laravel -如何向Laravel空间权限添加额外列

rqqzpn5f  于 2023-01-18  发布在  其他
关注(0)|答案(1)|浏览(145)

在我的Laravel-8项目中,我使用的是Spatie-Permission。我想在Spatie Role表中添加额外的列company_id。在迁移中,我执行了以下操作:

php artisan make:migration add_company_column_to_role_tables

此外,在config/permission中:

//'permission' => Spatie\Permission\Models\Permission::class,
    'permission' => App\Models\Permission::class,

    //'role' => Spatie\Permission\Models\Role::class,
    'role' => App\Models\Role::class,

我希望每个公司都创建自己的角色,但权限保持不变。要使其正常工作,我还需要做什么?
谢谢

pdsfdshx

pdsfdshx1#

我最近遇到了这个问题。我需要一个额外的display_name作为我的权限。spatie github repo上的人说最好以下一种方式使用Laravel翻译:

__('your string permission')

但我觉得不太合适。所以我做了这个:
1.已添加迁移:php artisan make:migration addCustomColumnsToPermissionsTable
1.然后,添加以下内容:

public function up() {
    Schema::table('permissions', function (Blueprint $table){
        $table->string('display_name')->after('name');
    });
}
public function down() {
    Schema::table('permissions', function (Blueprint $table){
        $table->dropColumn('display_name');
    });
}

3.-最终运行:php artisan migrate
瞧!你有了你的新专栏。希望这对你有帮助:D

相关问题