我正在使用 ruby on rails 开发一个多租户项目管理应用程序,并且对于为可能不属于特定租户的用户实施访问感到有些困惑。
例如,我们有用户 Bob 和 Martha,他们属于租户 A - 或者还有另外两个用户 Jim 和 Jill,他们属于租户 B。现在我们有一个名为 Mark 的客户,他是两个租户的客户。两个租户都有项目,我需要为客户构建一个可访问的表单,以便客户可以登录并查看他的项目。问题是我不希望而且显然没有客户希望这里的每个租户单独登录。我对自己在这里编写租户管理代码很感兴趣,但是我对如何实现这一点有点困惑。
我正在实施基于行的租赁,即每个模型都会在此处引用租户模型,并且登录的用户可以编辑和添加属于其租户的任何内容。但是,对于可能需要访问多个租户的客户或顾问用户的可能情况 - 我如何在此处设置结构。
理想情况下,客户希望能够登录并查看租户/公司不同的所有项目的列表。我该如何设置这个结构?此外,我想保持这种开放式的状态,以便来自 TenantB 的用户也可能是 TenantA 的客户。