Django多个数据库取决于模型

时间:2018-04-25 20:40:47

标签: python django

在我的网站上我有一个项目数据库,每个项目对应一台机器上的物理目录:

class Project(models.Model):
    path = models.CharField()

在我的项目创建视图中,我执行以下操作:

Project.objects.create(path=p)
os.mkdir(p)

一些外部非django应用程序为每个项目创建一个 sqlite db ,每个项目具有相同的数据库结构({project1.path}/db.sqlite3{project2.path}/db.sqlite3具有相同的表格。)

我想使用Django对象模型从这些数据库中读取(也许可以写)。

假设每个sqlite文件都包含一个包含2列cake的表tastiness, price。我想写一个

class Cake(models.Model):
    tastiness = models.Charfield()
    price = models.IntegerField()

然后,我不会进行任何迁移(表格只会匹配),我可以用以下内容读取数据库:

p = Project.objects.get(id=5)
L = Cake.objects.using(p.path + '/db.sqlite').filter(price__gt=10)

我已阅读文章on multiple db,但这似乎无法解决我的问题。

也许除了django之外的另一个包可以做到这一点?我知道我可以去生import sqlite3但我不会受益于django ORM。

0 个答案:

没有答案