From 58cd62fab0fc73e8b91c55605f8aa07a36d67794 Mon Sep 17 00:00:00 2001 From: Svetlin Stoev Date: Thu, 1 Sep 2022 18:08:25 +0300 Subject: [PATCH] Update spatie.blade.md (#144) * Update spatie.blade.md When a tenant is created through the central app TenancyBootstraped is called and wrong permissions are cached if permissions between central and tenant apps are different. * Add instruction to reset cache key on TenancyEnded Co-authored-by: lukinovec --- source/docs/v3/integrations/spatie.blade.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source/docs/v3/integrations/spatie.blade.md b/source/docs/v3/integrations/spatie.blade.md index fc68946..6507559 100644 --- a/source/docs/v3/integrations/spatie.blade.md +++ b/source/docs/v3/integrations/spatie.blade.md @@ -29,12 +29,16 @@ php artisan vendor:publish --provider="Spatie\Permission\PermissionServiceProvid mv database/migrations/*_create_permission_tables.php database/migrations/tenant ``` -Then add this to your `AppServiceProvider::boot()` method: +Then add this to your `TenancyServiceProvider::boot()`: ```php Event::listen(TenancyBootstrapped::class, function (TenancyBootstrapped $event) { \Spatie\Permission\PermissionRegistrar::$cacheKey = 'spatie.permission.cache.tenant.' . $event->tenancy->tenant->id; }); + +Event::listen(TenancyEnded::class, function (TenancyEnded $event) { + \Spatie\Permission\PermissionRegistrar::$cacheKey = 'spatie.permission.cache'; +}); ``` 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.