Rails 如何同时使用 sqlite 和 mysql,或者其他数据库

ch3n · 2012年07月21日 · 最后由 rasefon 回复于 2012年07月22日 · 4201 次阅读

如果在 config 里面设置了数据库,那么只能使用一种。 我现在需要把 sqlite 里面的数据导入 mysql,或者把 mysql 数据导入到 sqlite。 那需要怎么办?

导成中间格式,比如 yaml 或者 csv,如果是 yaml 的话,可以搜下 yaml_db 这个 gem

可以在每个 model 里面调用 establish_connection 来指定数据库连接。

http://apidock.com/rails/v3.2.3/ActiveRecord/Base/establish_connection/class

#2 楼 @Rei 这样的话也有个问题。。。 先调用 Amodel 连接 sqlite 没问题,然后调用 Bmodel 连接 mysql 也没问题,要是再调用 Amodel 的话,连接信息就变成 Bmodel 的 mysql 信息了。。。

class A < ActiveRecord::Base
  establish_connection(
    # Databse A options
  )
end

class B < ActiveRecord::Base
  establish_connection(
    # Databse B options
  )
end

#4 楼 @Rei thank you,it works

magic_model_generator

需要 登录 后方可回复, 如果你还没有账号请 注册新账号