我正在编写一个ruby脚本,需要连接到主数据库才能检索要连接的辅助数据库列表。我需要执行的步骤是:
我不需要同时连接到多个辅助数据库,因此打开 - >检索对象 - >关闭很好。
到目前为止,我所看到的所有示例都描述了数据库在database.yml中描述的多个连接,这在这里是不可能的,因为我需要连接的数据库的数量可能会有所不同。
此blog post描述了使用连接池,如下所示:
spec = database_a
ActiveRecord::ConnectionPool.open(spec) do |conn|
User.find_all
end
spec = database_b
ActiveRecord::ConnectionPool.open(spec) do |conn|
User.find_all
end
但是,ConnectionPool
似乎已更改,.open
方法已不再存在。
我很感激任何指示。
答案 0 :(得分:0)
问题在于:
[1] pry(main)> ActiveRecord::ConnectionPool
NameError: uninitialized constant ActiveRecord::ConnectionPool
ActiveRecord::ConnectionPool
不存在。然而,在我找到它的旅程中,我找到了ActiveRecord::ConnectionAdapters::ConnectionPool
,它看起来像你想要的东西。