Django:动态数据库文件

在我的Django项目中,我对第三方应用程序具有依赖性,该第三方应用程序在具有已知模式的各个目录中生成SQLite缓存文件。

我想使用Django模型来访问这些数据库,但是显然我不能使用静态DATABASES设置。

如何在任意路径上动态打开SQLite数据库?

编辑

正如Byron Ruth所指出的,解决方案是将django.db.connections结合使用usingQuerySet中的函数。

回答:

django.db.connections是包裹一个简单的DATABASES在你的设置中定义。包装器类在这里: django.db.utils#L137-L227

from django.db import connections

# Add connection information dynamically..

connections.databases['new-alias'] = { ... }

# Ensure the remaining default connection information is defined.

# EDIT: this is actually performed for you in the wrapper class __getitem__

# method.. although it may be good to do it when being initially setup to

# prevent runtime errors later.

# connections.databases.ensure_defaults('new-alias')

# Use the new connection

conn = connections['new-alias']

以上是 Django:动态数据库文件 的全部内容, 来源链接: utcz.com/qa/406233.html

回到顶部