允许Django为每个用户设置不同的数据库?

时间:2012-08-02 14:25:27

标签: database django

我想创建一个Django应用程序,其中每个用户都有自己的数据库。用户仍然可以从主用户进行身份验证,但所有应用程序模型都来自他们自己的数据库副本。

例如,假设我们有类似的内容:

DATABASES = {
'default': {
    'NAME': 'sqlite3',
    'ENGINE': 'default.db',
},
'user1': {
    'NAME': 'sqlite3',
    'ENGINE': 'user1.db',
}
'user2': {
    'NAME': 'sqlite3',
    'ENGINE': 'user2.db',
}

}

其中default.db具有User(和任何其他非app表),user1.db和user2.db具有特定于应用程序的模型。

我如何允许某些用户使用user1和其他用户使用user2?

我可以动态添加更多条目到DATABASES吗? (如果重要,我正在使用wsgi)

我不想更改代码(例如,通过插入.using())而是更改一个全局数据库路由器。

我已阅读https://docs.djangoproject.com/en/dev/topics/db/multi-db/,但无法弄清楚上述内容的必要性。

0 个答案:

没有答案
相关问题