Как подключиться к базе данных в IronWorker с помощью ActiveRecord?

У меня есть приложение Rails, которое использует IronWorker, и мне нужно подключиться к своей базе данных от работника. Как я могу это сделать?

2 ответа

Работник должен явно установить соединение с базой данных, поскольку она не работает в вашем приложении, поэтому вам необходимо передать информацию о соединении вашему работнику. Вы можете сделать это в рабочей нагрузке следующим образом:

client = IronWorkerNG::Client.new
task = client.tasks.create('MyWorker', 'database' => Rails.configuration.database_configuration[Rails.env])

Тогда внутри вашего работника:

ActiveRecord::Base.establish_connection(params['database'])

Я поднял сообщение в блоге по этому вопросу. Надеюсь, это поможет!

Тем не менее, в ореховой оболочке, сохранение конфигураций вашей базы данных в переменных среды делает это легко.

Другие вопросы по тегам