【发布时间】:2014-11-01 19:35:37
【问题描述】:
我编写了一个 django 项目,它是某种 CMS。 现在,我希望能够创建多个使用该 CMS 的帐户,每个帐户都有不同的数据库。 例如,用户可以在我的服务中为自己创建一个帐户 - 他将获得一个基于该 CMS 的网站。 我怎样才能开始这样做?
【问题讨论】:
我编写了一个 django 项目,它是某种 CMS。 现在,我希望能够创建多个使用该 CMS 的帐户,每个帐户都有不同的数据库。 例如,用户可以在我的服务中为自己创建一个帐户 - 他将获得一个基于该 CMS 的网站。 我怎样才能开始这样做?
【问题讨论】:
不幸的是,Django 不适合在运行时动态切换数据库。您要么必须实现真正骇人听闻的解决方案(就像在这个问题 Django multiple and dynamic databases 中提到的那样),要么使用几个独立的 Django 实例,您必须在服务器上动态启动这些实例。
一个更简单的解决方案是坚持一个数据库并通过其他方式区分不同用户的内容,例如Django Sites framework。我认为这种方法的唯一问题是您必须仔细设置管理站点配置,以便用户看不到彼此的对象(以防您计划使用内置的 Django 管理)。
【讨论】:
【讨论】: