mirror of
https://github.com/stancl/tenancy-docs.git
synced 2026-02-04 08:24:03 +00:00
Add spatie/laravel-permission
This commit is contained in:
parent
8b47a464a6
commit
0ba5f83b84
1 changed files with 19 additions and 0 deletions
|
|
@ -15,3 +15,22 @@ section: content
|
||||||
|
|
||||||
### For the central app: {#activitylog-central}
|
### For the central app: {#activitylog-central}
|
||||||
- Set the `database_connection` key in `config/activitylog.php` to the name of your central database connection.
|
- Set the `database_connection` key in `config/activitylog.php` to the name of your central database connection.
|
||||||
|
|
||||||
|
## laravel-permission {#permission}
|
||||||
|
|
||||||
|
Install the package like usual, but publish the migrations and move them to `migrations/tenant`:
|
||||||
|
|
||||||
|
```
|
||||||
|
php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvider" --tag="migrations"
|
||||||
|
mv database/migrations/*_create_permission_tables.php database/migrations/tenant
|
||||||
|
```
|
||||||
|
|
||||||
|
Then add this to your `AppServiceProvider::boot()` method:
|
||||||
|
|
||||||
|
```php
|
||||||
|
tenancy()->hook('bootstrapped', function (TenantManager $tenantManager) {
|
||||||
|
\Spatie\Permission\PermissionRegistrar::$cacheKey = 'spatie.permission.cache.tenant.' . $tenantManager->getTenant('id');
|
||||||
|
});
|
||||||
|
```
|
||||||
|
|
||||||
|
The reason for this is that spatie/laravel-permission caches permissions & roles to save DB queries, which means that we need to separate the permission cache by tenant.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue