我无法在 TenancyForLaravel 中访问租户('id')

问题描述 投票:0回答:1

我正在使用 TenancyForLaravel 开发一个多租户应用程序。直到昨天一切都正常,我不记得做了任何必须改变应用程序工作方式的事情。现在,我尝试访问

tenant('id)
文件和
AppServiceProvider.php
路由文件上的
tenant.php
,但它一直返回 null。我可以访问域
abc.example.test
bcd.example.test
上的租户,还可以访问刀片文件、组件文件 (livewire) 和控制器文件上的租户('id')。

我尝试在AppServiceProvder和tenant.php文件中运行dd(Tenant::all(), Domain::all()),它执行没有问题,表明我注册了两个租户。我已经清除了应用程序缓存,但仍然面临这个问题。我已经检查了我所做的配置是否有问题,我找不到任何问题。

Laravel 11.9 Laravel 的租赁:3.8.5

拜托,我需要帮助。

laravel tenancyforlaravel
1个回答
0
投票

请检查您的设置

在路由中使用中间件:

// routes/tenant.php
Route::middleware([
    'web',
    InitializeTenancyByDomain::class,
    PreventAccessFromCentralDomains::class,
])->group(function () {
    // Your routes here
});

修复 AppServiceProvider:

public function boot()
{
    if (tenancy()->initialized) {
        $tenant = tenant();
        // you can access tenant('id')
    }
}

如果仍然不起作用,请清除配置和缓存:

php artisan config:clear
php artisan cache:clear
© www.soinside.com 2019 - 2024. All rights reserved.