八达通在整个模型上使用(:master)

时间:2013-05-17 22:11:05

标签: ruby-on-rails octopus

我正在尝试在整个模型上使用特定的数据库。基本上,我们有一个主/从DB配置,我想在整个订单相关的方法上使用(:master)(所以在整个订单模型上)。

问题是我显然可以在我的模型顶部使用(:master),但我不确定它的作用,我无法在文档中找到它:

  • 模型中的所有调用是否都使用master(比如,如果方法在此模型中执行User.find,它是否会使用master?) 或
  • 对于Order方法,整个应用程序的所有调用是否都使用master(比如,如果User模型中的方法执行Order.find,它是否会使用master?)

感谢您的解释。

1 个答案:

答案 0 :(得分:0)

以下是我们如何做到的。 我们使主连接与database.yml中定义的默认数据库相同。 然后在生活在master中的每个模型中,我们将以下行放在类行的正下方。

octopus_establish_connection Rails.env.to_sym