来自单个Rails应用程序的多个DB:最先进的是什么?

时间:2012-04-23 19:44:48

标签: ruby-on-rails ruby activerecord rails-migrations multiple-databases

在做了一些研究后,似乎Rails对多个数据库连接有明确,优雅的支持:http://www.rubynaut.net/articles/2008/05/31/how-to-access-multiple-database-in-rails.html

但是,rails似乎不支持在迁移中支持此功能:http://www.jamesinman.co.uk/2011/10/serving-one-rails-application-with-multiple-databases/

所以有一些项目已经填补了空白。例如:http://kovyrin.github.com/db-charmer/

我在这里遗漏了什么吗?奇怪的是,连接到多个数据库既简单又优雅,但迁移它们需要黑客攻击。

1 个答案:

答案 0 :(得分:1)

啊,实际上很简单:-D

在Rails 3中:

class CreateAPIRequestLogs < ActiveRecord::Migration
  def connection
    SpecialClassWithAlternativeDB.connection
  end

  def change
    # ... your migration code ...
  end
end

然而,看起来回滚无法正常工作。

此外,架构版本仍保留在主数据库中。