joaovdiasb/laravel-multi-tenancy

Laravel 多租户包

0.2 2023-09-14 13:23 UTC

This package is auto-updated.

Last update: 2024-09-14 15:21:59 UTC


README

Software License CI Total Downloads

安装

通过composer安装

composer require joaovdiasb/laravel-multi-tenancy

配置

  1. 发布提供者和迁移
php artisan vendor:publish --provider="Joaovdiasb\LaravelMultiTenancy\LaravelMultiTenancyServiceProvider" && php artisan migrate --path=./database/migrations/tenant
  1. 添加环境变量 TENANT_ENCRYPT_KEY,值为32个随机字符的字符串。

用法

  1. 在需要多租户的路由上添加中间件 multitenancy
  2. 在请求中发送包含租户引用的 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)。请参阅 许可证文件 获取更多信息。