tonystore/livewire-permission-manager

提供图形界面来管理角色和权限的软件包。

安装: 650

依赖项: 0

建议者: 0

安全: 0

星级: 19

关注者: 2

分支: 4

公开问题: 0

语言:Blade

类型:软件包

v0.3.0 2024-02-11 05:27 UTC

This package is auto-updated.

Last update: 2024-09-11 06:45:40 UTC


README

Latest Stable Version Total Downloads License PHP Version Require

提供图形界面来管理角色和权限的软件包。

需求

Livewire 版本兼容性

通过 Composer 安装

步骤 1: Composer

在控制台运行此命令行。

composer require tonystore/livewire-permission-manager

步骤 2: 发布资源

发布配置文件

php artisan vendor:publish --provider="Tonystore\LivewirePermission\LivewirePermissionProvider" --tag=config-permission

发布视图

只有当需要修改界面时才发布视图。

php artisan vendor:publish --provider="Tonystore\LivewirePermission\LivewirePermissionProvider" --tag=views-permission

发布迁移

发布迁移,只有当为角色或权限的详细信息创建新列时。

php artisan vendor:publish --provider="Tonystore\LivewirePermission\LivewirePermissionProvider" --tag=migrations-permission

发布语言

如果您想修改任何翻译,请发布翻译。

php artisan vendor:publish --provider="Tonystore\LivewirePermission\LivewirePermissionProvider" --tag=langs-permission

用法

默认情况下,Tailwind 用于创建角色和权限管理界面,但您也可以选择 Bootstrap 主题。

<?php
return [
	/*
	 * Supported Theme: 'tailwind, bootstrap',
	 */
	'theme'  =>  'tailwind',
];

配置模板

您可以使用此软件包的两种选择,使用 blade 指令或使用 Laravel 组件。

<?php
return [
	'blade-template'  => [
		'type'  =>  'components', //Supported Type: 'components, directives'
		'component'  =>  'AppLayout', //type: components
		'directives'  => [ //type: directives
			'extends'  =>  'layouts.app',
			'section-content'  =>  'content',
		],
	],
];

包含包含图形界面所需脚本和样式的组件。

<head>
    ....
       <x-permissions::styles />
    ....
</head>
 <body> 
    ...
    @livewireScripts
    
    <script src="//cdn.jsdelivr.net.cn/npm/sweetalert2@10"></script>
    //INSERT COMPONENT
       <x-permissions::scripts />
  
 </body>

要删除角色,使用 SweetAlert,因此您必须在设计中包含它,并且它必须在脚本组件之前。 注意,您必须在 Livewire 脚本之后导入它。

选择模态设计

您将能够选择软件包将具有的样式类型,目前只有列表类型模态可用,在此进行配置

<?php
return [
	'modals'  => [
		'role'  =>  'list'
	],
];

自定义页面

在此处定义分页选项的数字数组。

<?php
   'paginate' => [
        'perPages' => [
            10, 25, 50, 100, 200
        ]
    ]

更改表名

在此处指定要运行迁移的表名。默认情况下,它使用 Laravel Permission 软件包中列出的表。

<?php
return [
	'tables'  => [
		'roles'  =>  config('permission.table_names.roles', 'roles'),
		'permissions'  =>  config('permission.table_names.permissions', 'permissions'),
	],
];

排除角色

在此处定义您想要从 Livewire 查询中排除的角色,以便显示和修改。默认情况下,您将有一个空数组。

<?php
return [
	'roles'  => [
		'excludes'  => []
	]
];

列名

在此处定义将在定义的 roles 和 permissions 表中创建的新列的名称,这样您可以为每个创建的角色或权限添加描述,默认列名为 description。

<?php
return [
	'column_name'  => [
		'add_column' => false,
		'description'  =>  null,
	],
];

如果您标记为 true 添加描述列的选项,则必须先前在相应的数据库表中生成该列。

路由

设置角色管理路径和权限的自定义前缀、中间件和名称。默认情况下,您将具有以下内容

<?php
return [
	'route'  => [
		'middleware'  => [
			'web',
			'auth'
		],
		'prefix'  =>  'admin',
		'name'  =>  'permission.index',
		'url'  =>  '/roles/manager'
	],
];

现在,一旦配置完毕,您将能够访问管理角色的路径。

http:///admin/roles/manager