0

我有一个带有 postgres 数据库的 Rails 应用程序 A。我还有另一个带有 postgres 数据库的 Rails 应用程序 B。现在我想在应用 A 中重用应用 B 的一些数据。导入这些数据的最佳方法是什么?我假设可以为此使用 rake 任务,但是您将如何执行此操作?

需要在app A的database.yml中添加app B的数据库的连接详情吗?我如何实际获取数据?

4

2 回答 2

1

根据导入的实际含义,您可以使用dblink直接查询其他数据库:

http://postgresql.org/docs/current/static/dblink.html

当 PostgreSQL 9.3 发布时,请务必查看新的外部数据包装器:

http://postgresql.org/docs/9.3/static/postgres-fdw.html

于 2013-06-24T12:47:15.420 回答
1

您可以通过 activerecord 进行手动连接

require 'active_record' 
ActiveRecord::Base.establish_connection(
  :adapter => "mysql", 
  :host => "localhost", 
  :username => "root", 
  :password => "abcd", 
  :database => "funonrails")

或做这样的事情

dbconfig = YAML::load(File.open('database.yml')) 
ActiveRecord::Base.establish_connection( dbconfig[:students_development] )
于 2013-06-24T13:07:24.267 回答