6

我正在研究开发一个多租户 SaaS 应用程序,我发现几个站点描述了一种使用tenantID 和可更新视图分离数据的可靠方法。例如这篇博文

这一切都取决于让您的用户帐户从主用户表进行身份验证的能力,然后让他们各自的数据库连接使用这些用户特定的凭据。这样,视图可以提取用户 ID 并将其映射到租户 ID 以显示该用户的视图。然而,当涉及到数据库连接(存储在文本配置文件中)时,大多数 PHP 框架往往是非常静态的。他们似乎意见不合。

有谁知道:a)如何让 CodeIgniter 优雅地处理这个问题?b) 一个不同的 PHP 框架可能吗?

4

3 回答 3

4

在一个可怕的基本级别上,您可以这样做:

http://philsturgeon.co.uk/blog/2009/06/How-to-Multi-site-CodeIgniter-Set-up

根据需要扩展它,或将逻辑移动到 MY_Controller 以获得更大的灵活性。

于 2011-03-12T17:11:43.810 回答
1

Code Igniter 论坛上有一个话题在讨论这个问题。

http://codeigniter.com/forums/viewthread/165227/#846845

看起来您将用户数据库设置为配置文件中的主数据库,然后根据该用户数据库中的信息为用户生成一个新连接的配置数组。因此,我想您至少需要将数据库名称存储在用户数据库中。

不过不确定这有多好用,因为我还没有机会尝试一下。

抱歉,如果这不是您想要的,但它应该让您了解 Code Igniter 方法。

于 2011-03-12T08:42:20.007 回答
0

Zend 框架。 http://framework.zend.com/manual/en/learning.multiuser.intro.html

于 2010-04-23T09:33:30.453 回答