Как я могу заставить delayed_job использовать определенное соединение с базой данных?

У меня есть приложение Rails 3, которое использует разные базы данных в зависимости от поддомена. Я делаю это, используя "install_connection" в ApplicationController.

Теперь я пытаюсь использовать гем delayed_job для некоторой фоновой обработки, однако он использует соединение с базой данных, которое активно в данный момент. Он подключается к базе данных поддомена.

Я бы хотел заставить его использовать "общую" базу данных. Я сделал это для некоторых моделей, вызывая "install_connection" в модели следующим образом:

class Customer < ActiveRecord::Base
  establish_connection ActiveRecord::Base.configurations["#{Rails.env}"]
  ...
end

Есть идеи, как я могу это сделать?

8
задан JAG 25 June 2011 в 16:29
поделиться