mymediamagnet/multi-tenant-laravel

dev-master 2018-07-23 21:20 UTC

This package is auto-updated.

Last update: 2024-09-09 14:16:50 UTC


README

Latest Version on Packagist Build Status Quality Score Coverage Status Total Downloads

此包旨在为 Laravel 中的新多租户项目提供一个灵活的起点。仍处于开发中

安装

您可以通过 composer 安装此包

composer require mymediamagnet/multi-tenant-laravel

设置

  • 请确保从您的路由中移除所有 Auth 路由以开始设置
  • 运行 php artisan vendor:publish 并选择 multi-tenant-laravel 作为包
  • 运行 php artisan migrate。这将创建本包所需的全部表格
  • 在文件 app\Http\Middleware\RedirectIfAuthenticated 中,您可能会看到 return redirect('/home');。将其更改为 return redirect('/');

设置您的模型

在包迁移中的主表中创建以下模型。请确保从包的基础类扩展

  • 角色
  • 权限
  • 租户
  • 功能
  • 用户(可能已经创建)
use MultiTenantLaravel\App\Models\BaseUser;

class User extends BaseUser
{
    ...
}
use MultiTenantLaravel\App\Models\BaseTenant;

class Tenant extends BaseTenant
{
    ...
}

按照相同的模式制作您的角色、权限和功能模型

用法

默认情况下,您的项目现在应该已设置好,在访问时自动跳转到登录页面。要创建新用户,可以使用辅助命令。

php artisan tenant:create-user - 您将需要回答一系列问题来设置新用户,或者您可以使用 php artisan tenant:create-user --fake 快速创建一个虚拟用户

要创建新租户

php artisan tenant:create-tenant - 您将需要回答一系列问题来设置新租户,或者您可以使用 php artisan tenant:create-tenant --fake 快速创建一个虚拟租户

在创建新租户时,您可以选择将现有用户添加到租户,或创建新用户。

一旦登录,如果您的用户仅属于 1 个租户,您将立即被重定向到该租户的控制台。否则,您将到达一个控制台,允许您选择要管理的控制台。

测试

composer test

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

贡献

有关详细信息,请参阅 CONTRIBUTING

安全

如果您发现任何安全相关的问题,请通过电子邮件 troy@mymediamagnet.com 而不是使用问题跟踪器。

鸣谢

许可

MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件