commitm/multi-tenant

dev-main 2024-03-26 11:47 UTC

This package is auto-updated.

Last update: 2024-09-05 22:44:46 UTC


README

简化配置多租户包

部署

要部署此项目,运行

packages/multi_tenant.yaml 中添加

multi_tenant:
    tenants:
        company_id:
            entity: App\Entity\Company
            aware: App\Entity\Interfaces\TenantAwares\CompanyAware
            property: company

company_id 名称租户

entity 实体名称,限制其他实体或自动设置租户

aware 需要实现 CommitM\MultiTenant\Multitenancy\TenantAware 接口以关注以下实体

property 租户属性名称

CommitM\MultiTenant\Multitenancy\Provider\TenantsProvider

用于管理租户的服务

可以使用如下方式

$tenantsProvider->getTenantByClass(Company::class)->setEntity($this->company);

如果设置了租户,您不需要记住使用具有租户实体的setter $product = new Product(): $product->setCompany(); // 这将自动设置