问题描述
||
我要使用一组ActiveRecord模型和两个数据库(具有相同的架构)。我想根据父模型的主键即时切换连接。另一种方法是复制模型集,并使它们从另一个超类继承,该超类的连接是另一个数据库(http://pragdave.pragprog.com/pragdave/2006/01/sharing_externa.html)。基本上,我正在构建一个界面,该界面将允许用户比较两个数据库中的相似数据。但是,有时用户要比较的数据将来自同一数据库。该数据将是只读的,因为我不需要向任何一个数据库写入任何内容。
解决方法
现在,我们正在研究用于数据库分片的“ 0”,也许这对您也有用吗?
https://github.com/tchandy/octopus
,这是另一种解决方案。我没有尝试过:
http://magicmodels.rubyforge.org/magic_multi_connections/
该页面承认在1.0.0版中已发现问题。它也没有像章鱼那样“透明”(在另一个答案中提到),章鱼可以通过在现有代码周围包装一个块来使用不同的连接。