在CakePHP中登录后,每个用户帐户有不同的数据库

时间:2015-05-12 13:04:25

标签: mysql cakephp user-accounts multiple-databases

我想为不同的注册创建单独的数据库。 首先我是通过多个子域手动完成的,但现在我希望它在注册后自动注册时有人注册。

这就是我想要实施的目标: 首先,我将创建一个公共数据库“user_databases”,只存储“用户电子邮件”和“用户数据库名称”。因此,当任何用户使用他的电子邮件登录时,我将获取其数据库名称,然后从获取的数据库的users表中验证登录密码。

但问题是我将如何实现它? 我应该在Config的database.php中包含代码,还是在每个模型中使用$ useDbConfig(由于某些原因,我不想使用它)?

有没有更好的方法呢?我是否正在考虑实施它? 请帮忙指导。

1 个答案:

答案 0 :(得分:0)

由于cake的事件系统,cakephp中的数据库分区现在是一项微不足道的任务。 cakephp允许您在表单调度过滤器中在应用程序启动过程的早期与其请求和响应对象进行通信。 markstory已经很好地写了这个http://mark-story.com/posts/view/using-cakephp-and-a-horizontally-sharded-database