2010-12-06 50 views
4

如果我想在rails中使用多个数据库,我如何处理每个数据库的单独迁移数据库?在Rails迁移中,如何处理多数据库

在这种情况下,我有一个帐户数据库和其他数据库的数据。

有类似:

迁移/账户/ migrate/mydatabase/

所以我可以运行独立迁移。

回答

3

在你的database.yml创建的数据库,如不同的连接方式:

development1: 
    adapter: mysql 
    username: root 
    password: 
    database: example_development1 

development2: 
    adapter: mysql 
    username: root 
    password: 
    database: example_development2 

然后给你选择的每个数据库中的每个模型,可以使用存储:

class Account < ActiveRecord::Base 
establish_connection :development2 
end 

编辑 如果您想要将其应用到可以执行的迁移:

class Migration1 < ActiveRecord::Migration 
    def self.connection 
    Account.connection #being Account a model that has a connection to the database you want 
    end 
..... 
end 
+0

这是一个很好的答案,这也是适用于迁移? – 2010-12-07 00:17:51