我正在使用以下多租户套餐: https://laravel-tenancy.com/docs/hyn/5.3
Laravel:5.7
我当前通过更改切换事件的配置使缓存租户知道。
Event::listen(Switched::class, function (Switched $event) {
config(['cache.stores.file.path' => storage_path('framework/cache/' . $event->website->uuid)]);
});
在执行以下命令时效果很好:
php artisan tenancy:run my:caching-command --tenant=2
这不能很好地工作:
php artisan tenancy:run my:caching-command
在这种情况下,仅为第一个租户创建一个缓存目录。在调试它时,我发现实际上已为每个租户正确更新了配置。但是,缓存驱动程序未使用新路径...
有任何想法吗?
答案 0 :(得分:0)
我需要使用以下方法重建缓存实例:
app()->forgetInstance('cache');
如果稍后在代码中通过app('cache')
访问缓存实例,则会使用您当前的配置对其进行重建。