【发布时间】:2014-05-13 10:10:16
【问题描述】:
我正在尝试连接到我的 Rails 应用程序中的 2 个数据库。
我在我的 RoR 应用程序中创建了 2 个模型,用于 2 个不同数据库上的 2 个表。
我知道在访问表之前如何连接到另一个数据库:
ActiveRecord::Base.establish_connection()
但我想要完成的是每次调用该模型/表时自动设置与正确数据库的连接,因为我需要拥有不同的数据库。
就像 Rails 控制器上的 before_filter 一样,我怎样才能让我的 rails 应用程序运行一个建立连接的方法,如下所示:
def set_database
ActiveRecord::Base.establish_connection({ :adapter => 'nuodb',:database => 'test_db',:host => 'localhost',:username => 'test_username',:password => 'test_password', :schema => 'TEST_SCHEMA'})
end
我希望每次调用模型时都运行此方法。
我一直在查看 ActiveModel::Callbacks,但似乎找不到回调。
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 activerecord activemodel