aweram / user-management
Interface for manage users
Installs: 31
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
pkg:composer/aweram/user-management
Requires
- ext-fileinfo: *
- aweram/tailwindcss-theme: ^2.0
- laravel/fortify: ^1.18
README
Описание
Пакет содержит интерфейс администрирования для пользователей. Через конфиг user-management можно переименовать путь и изменить класс компонента для livewire, что бы дописать методы.
Страница содержит таблицу пользователей, полностью на livewire. Есть поиск по двум полям пользователя, добавление, редактирование и удаление.
Есть страница для создания ролей и редактирования прав. В модели Permission добавляются файлы политик, через которые можно настроить права для ролей, создаются права при помощи конфигурации и команды.
К пользователю добавляется поле super, при котором игнорируются все права доступа (все политики).
Добавляет middleware app-management - дает доступ только тем пользователям, у которых есть роль с правом управления сайтом
Добавляет middleware super-user - дает доступ только пользователям с заполненным полем super
Установка
Добавить "./vendor/aweram/user-management/src/resources/views/**/*.blade.php" в tailwind.admin.config.js, созданный в пакете tailwindcss-theme.
Добавить трейт use ShouldRole; (use Aweram\UserManagement\Traits\ShouldRole;) в класс пользователя.
Запустить миграции для создания ролей php artisan migrate
Создать права доступа из конфигурации php artisan um:permissions
Команды
php artisan um:super {--id=} {--email} - меняет статус супер пользователя для выбранного (по id или email)
php artisan um:permissions - создает права доступа на основе конфигурации, они появляются у роли, на странице редактирования ролей
Конфигурация
pageUrl- адрес страницы пользователейcustomIndexComponent- задать свой livewire компонент для страницы пользователейprefix- префикс страницы пользователей (по умолчанию admin)as- задает префикс имени роута страницы пользователей (по умолчанию admin.)userPolicy- класс политики для пользователейuserPolicyTitle- заголовок прав для пользователя на странице ролейuserPolicyKey- ключ политики для сохранения в правах доступа (не рекомендуется менять)customUserObserver- задать своего наблюдателя за пользователямиrolesUrl- адрес страницы с ролямиcustomRoleIndexComponent- задать свой livewire компонент для страницы ролейrolePolicy- класс политики для ролейrolePolicyTitle- заголовок прав для ролей на странице ролейrolePolicyKey- ключ политики для сохранения в правах доступа (не рекомендуется менять)permissions- список политик для сохранения в качестве прав доступа. Структура каждого элемента: "title" - заголовок, "policy" - класс политики, "key" - ключ политики (если в дальнейшем его поменять, то старая модель удалится при запуске команды)