joaovdiasb / laravel-multi-tenancy
Laravel 多租户包
0.2
2023-09-14 13:23 UTC
Requires
- php: ^7.4
- doctrine/dbal: ^3.0
- illuminate/support: ^8.0
Requires (Dev)
- mockery/mockery: ^1.0
- nunomaduro/collision: ^4.0
- orchestra/database: ^6.0
- orchestra/testbench: ^6.0
- phpunit/phpunit: 9.4
- symfony/thanks: ^1.0
This package is auto-updated.
Last update: 2024-09-14 15:21:59 UTC
README
安装
通过composer安装
composer require joaovdiasb/laravel-multi-tenancy
配置
- 发布提供者和迁移
php artisan vendor:publish --provider="Joaovdiasb\LaravelMultiTenancy\LaravelMultiTenancyServiceProvider" && php artisan migrate --path=./database/migrations/tenant
- 添加环境变量
TENANT_ENCRYPT_KEY,值为32个随机字符的字符串。
用法
- 在需要多租户的路由上添加中间件 multitenancy;
- 在请求中发送包含租户引用的 X-Ref 头部,该引用定义在租户表中。
命令
- 添加租户
php artisan tenant:add {name?} {reference?} {db_name?} {db_user?} {db_password?} {db_host?} {db_port?}
{reference?} 用于在请求头中传递以识别租户
所有参数都是可选的,如果不存在,将在控制台询问
- 迁移租户
php artisan tenant:migrate {tenant?} {--fresh} {--seed}
{tenant?} 通过id选择租户,如果不存在,则选择所有租户
{--fresh} 如果存在,将删除数据库中的所有表
{--seed} 如果存在,将调用种子
- 种子租户
php artisan tenant:seed {tenant?} {--class=*}
{tenant?} 通过id选择租户,如果不存在,则选择所有租户
{--class=*} 是必需的,指定类名
- 备份租户
php artisan tenant:backup {tenant?}
{tenant?} 通过id选择租户,如果不存在,则选择所有租户
测试
运行测试
vendor/bin/phpunit
贡献
请参阅 CONTRIBUTING 获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 j.v_dias@hotmail.com 而不是使用问题跟踪器。
许可证
MIT许可证(MIT)。请参阅 许可证文件 获取更多信息。