0

我的 Rails 应用程序(我们称之为“Mira”)将与现有应用程序(我们称之为“Jira”)进行交互。Mira 将存储有关 Jira 的信息,并将能够直接操作其数据库(因为我们会说 Jira 有一个不完整的 API)。

由于我想直接操作 Jira 的数据库,因此在我的 Mira 应用程序中让模型代表 Jira 的每个表是有意义的。这样我就可以使用 ActiveRecord 来操作它。

但实际上!有两个吉拉斯。一个暂存实例和一个生产实例。

所以现在我希望我的模型能够愉快地与 Jira 的一个实例交互,从而能够使用不同的数据库。

如果我在实例化我的模型时可以这样做,那就太棒了,也许像这样:

Jira::CustomField.new(:staging)

或类似的东西。

想法?更好的方法来实现这一点?我所说的目标是否可能?

4

1 回答 1

2

正如ActiveRecord::Base的文档所讨论的,使用该方法很容易让不同的 Rails 模型对象连接到不同的数据库establish_connection

但是,如果您希望同一个类根据配置连接到多个数据库,那将是一种痛苦。您需要在这里使用 ActiveRecord 还是可以使用DataMapper?我认为在这种情况下会更好。查看在一个进程中使用什么 ORM 多个 db 连接 sinatra 应用程序?举个例子

于 2011-04-15T17:01:35.350 回答