2

如何在 Django 中配置托管在两个不同数据库中的模型?

到目前为止,我在出色的 Django 环境中设置了 3 个数据库。我的一个应用程序使用路由器自动将数据发送到正确的数据库——这很容易完成,因为这个应用程序只处理那个数据库。

但是,我有另一个使用两个不同数据库的应用程序。该应用程序“控制”其中一个,但从一秒钟内获取完全通过另一个应用程序更新的数据。

我尝试向模型的 Meta 类添加任意属性,以在路由器中匹配,但这在 Django 中是不允许的(正如我发现的那样)。

我可以提供哪些数据可以在路由器中匹配模型,以知道该去哪个数据库?

4

1 回答 1

1

如果您在定义模型类时知道要使用哪个 DB,则可以将任意属性添加到类本身而不是 Meta 类。在路由器中,您可以使用 hasattr 查看属性是否存在(因为它不适用于内置模型),或者只是尝试/除并捕获异常。

于 2013-05-15T20:08:55.477 回答