mk-devs / multi-tenant
动态创建、迁移和初始化不同的数据库,无需更改应用程序连接。
1.1
2019-10-29 20:43 UTC
This package is auto-updated.
Last update: 2024-09-29 05:48:42 UTC
README
Multi-Tenant 是一个 Laravel 扩展包,可以用于动态创建、迁移和初始化不同的数据库,无需更改应用程序连接。
这对于将每个租户的数据存储在不同数据库中的 Web 应用程序非常有用。
安装
您可以通过 composer 安装此扩展包
composer require mk-devs/multi-tenant
该扩展包将自动注册自己。
使用方法
在您的 Laravel 项目中安装此扩展包将添加 MultiTenant 类以及一些有用的 artisan 命令。
Artisan 命令
php artisan tenant:create 数据库连接
php artisan tenant:migrate 数据库连接 --path
php artisan tenant:refresh 数据库连接
php artisan tenant:rollback 数据库连接
php artisan tenant:seed 数据库连接 --class
可用方法
create
创建新数据库参数: [数据库, 连接]
migrate
运行特定数据库的迁移参数: [数据库, 连接, 路径]
refresh
重置并重新运行所有迁移参数: [数据库, 连接]
rollback
回滚最后一个数据库迁移参数: [数据库, 连接]
seed
运行特定数据库的种子参数: [数据库, 连接, 类]
set
在运行时更改应用程序数据库连接参数: [数据库, 连接]
参数
用例
// Simple examples MultiTenant::migrate('database_name'); MultiTenant::create('database_name')->migrate(); MultiTenant::seed([ 'database' => 'database_name', 'connection' => 'mysql', 'class' => 'CustomersTableSeed' ]); MultiTenant::set([ 'database' => 'database_name', 'connection' => 'mysql', ]); // Advanced example MultiTenant::migrate([ 'database' => 'database_name', 'connection' => 'mysql', 'path' => '/database/migrations/tenant' ])->seed(['class' => 'CustomersTableSeed'])->set();
许可
Multi-Tenant 是一个开源软件,许可协议为 MIT