Aby skutecznie korzystać z pakietu uprawnienia spatie Laravel, wymagane jest kilka konkretnych konfiguracji i etapów konfiguracji:
Instalacja i publikowanie
- Zainstaluj pakiet za pośrednictwem kompozytora: `Composer wymaga spatie/laravel-permission`.
- Opublikuj plik migracji i konfiguracji za pomocą polecenia Artisan:
`PHP Artisan Vendor: Publish --provider =" spatie \ uprawnienia \ PermissionserviceProvider "'.
- Uruchom migracje, aby utworzyć niezbędne tabele (`` Role ', `Permissions`,` Model_Has_Permissions`, `Model_Has_Roles`,` ROLE_HAS_PERMISISISS`) w bazie danych.
Konfiguracja modelu użytkownika
- Model użytkownika (lub dowolny model autentyczny, który chcesz przypisać role/uprawnienia) musi użyć cechy „HasRoles` dostarczonej przez pakiet. Umożliwia to zarządzanie rolą i uprawnieniami w modelu.
Regulacja plików konfiguracji
- Pakiet publikuje plik `config/uprawnia
- Jeśli używasz UUIDS zamiast auto-incrementing ID, musisz odpowiednio dostosować migracje i ewentualnie plik konfiguracji przed uruchomieniem migracji.
-W przypadku konfiguracji wielu lub zespołowych należy włączyć i skonfigurować funkcję „zespołów” w pliku konfiguracyjnym.
Konfiguracja pamięci podręcznej
- Pakiet wykorzystuje buforowanie do optymalizacji wyszukiwania uprawnień. Domyślnie wygaśnięcie pamięci podręcznej jest ustawione na 24 godziny.
- Możesz dostosować sklep z pamięcią podręczną, prefiks i czas ważności w `config/uprawsission.php` w tablicy„ pamięci podręcznej ”.
- W scenariuszach wieloodnicowych zaleca się ustawienie unikalnego prefiksu pamięci podręcznej, aby uniknąć starć.
- Jeśli aplikacja zmieni najemców podczas jednej żądania, może być konieczne ręczne ponowne ponowne ponowne ponowne ponowne ponowne ponowne wzburzenie pamięci podręcznej.
oprogramowanie pośrednie
- Aby chronić trasy w oparciu o role lub uprawnienia, zarejestruj aliasy oprogramowania pośredniego pakietu (`` role ', `uprawnienia',` role_or_permission`) w konfiguracji HTTP lub konfiguracji oprogramowania pośredniego.
Zaawansowane dostosowywanie
- Możesz rozszerzyć modele roli i uprawnień pakietu, jeśli chcesz dostosować zachowanie, ale musisz uważać, aby zaktualizować plik konfiguracyjny, aby wskazać swoje niestandardowe modele.
- Zmiana domyślnych nazw tabeli bazy danych wymaga aktualizacji pliku konfiguracji i ewentualnie migracji.
- W przypadku wsparcia UUID lub innych zaawansowanych przypadków użycia postępuj zgodnie z zaawansowanymi sekcjami dokumentacji pakietu.
Podsumowując, kluczowe konfiguracje obejmują publikowanie i dostosowywanie pliku konfiguracyjnego, dodanie cechy „HasRoles` do modelu użytkownika, uruchamianie migracji, prawidłowe konfiguracja buforowania i opcjonalnie konfiguracyjna obsługa oprogramowania pośredniego i wielozadaniowego. Zgodnie z tymi krokami zapewnia, że pakiet spatie będzie działał skutecznie w aplikacji Laravel [1] [2] [6] [8] [9].
Cytaty:
[1] https://spatie.be/docs/lavel-permission/v6/installation-laravel
[2] https://spatie.be/docs/Laravel-permission/v6/prerequistes
[3] https://spatie.be/docs/laravel-data/v4/requirements
[4] https://packagist.org/packages/spatie/laravel-settings
[5] https://spatie.be/docs/Laravel-html/v3/installation-setup
[6] https://www.honeybadger.io/blog/Laravel-permissions-Roles/
[7] https://github.com/spatie/laravel-slack-alerts/discussions/22
[8] https://github.com/spatie/laravel-permission/blob/main/docs/advanced-usage/cache.md
[9] https://www.allphptricks.com/Laravev-11-Spatie-user-Roles-and-permissions/
[10] https://stackoverflow.com/questions/58114242/Extending-the-spatie-role-model-but-use-a-different-database-table