1

我想知道从数据库中加载不可变数据的正确位置应该在所有模型中都可用。

它基本上是一个数据库范围的设置(而不是项目设置),但应该与数据模型类似,并且应该可以在其他模型中访问。

我在哪里放置/实现这个?从我读过的文档中,这个有点架构问题并不太清楚。

编辑:设置:我使用的是图形数据库,而不是关系数据库。有一个名为“current”的节点,它指向版本化数据的当前版本作为快捷方式。当更新一条数据(一个节点)时,在调用 .save() 时,会在相应节点的模型中处理删除与旧节点的关系并链接新节点。

只有一个“当前”节点指向包含最新日期、最新版本的每个节点。该节点本身是不可变的。它没有属性。它的关系由链接节点的模型管理。

因为它是单例(作为一个概念,不一定是单例类实现),每次查询它会浪费数据库资源,每次都打数据库。

这是否说明了问题?谢谢!

4

1 回答 1

0

虽然不是针对您的确切问题的解决方案的确切实现,但该项目从数据库管理系统全局变量。它包含一个缓存实现,可以帮助您避免在项目中每次都查询数据库。

https://github.com/andres-torres-marroquin/django-system-globals/blob/master/system_globals/models.py

于 2013-05-30T16:05:41.433 回答