mirror of
https://github.com/stancl/tenancy-docs.git
synced 2025-12-12 10:14:03 +00:00
3.x redesign
This commit is contained in:
parent
857122540f
commit
f8f354c323
229 changed files with 201175 additions and 22440 deletions
37
source/docs/v3/integrations/spatie.blade.md
Normal file
37
source/docs/v3/integrations/spatie.blade.md
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
---
|
||||
title: Integration with Spatie packages
|
||||
extends: _layouts.documentation
|
||||
section: content
|
||||
---
|
||||
|
||||
# Integration with Spatie packages
|
||||
|
||||
## **laravel-activitylog**
|
||||
|
||||
### For the tenant app:
|
||||
|
||||
- Set the `database_connection` key in `config/activitylog.php` to `null`. This makes activitylog use the default connection.
|
||||
- Publish the migrations and move them to `database/migrations/tenant`. (And, of course, don't forget to run `artisan tenants:migrate`.)
|
||||
|
||||
### For the central app:
|
||||
|
||||
- Set the `database_connection` key in `config/activitylog.php` to the name of your central database connection.
|
||||
|
||||
## **laravel-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
|
||||
Event::listen(TenancyBootstrapped::class, function (Tenancy $tenancy) {
|
||||
\Spatie\Permission\PermissionRegistrar::$cacheKey = 'spatie.permission.cache.tenant.' . $tenancy->tenant->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