UPDATE
Там лучшее решение сейчас :), попробуйте этот камень activejob_backport, легкость установки, одни и те же функции, как рельсы 4.2.
ВНИМАНИЕ: устаревшее СОДЕРЖАНИЕ НИЖЕ
Чтобы использовать ActiveJob в Rails 4.1, вы должны сделать это первым.
# in Gemfile
gem 'activejob'
# in your terminal
bundle
# create a config/initializers/active_job.rb
require 'active_job'
# or any other supported backend such as :sidekiq or :delayed_job
ActiveJob::Base.queue_adapter = :inline
Тогда вы должны быть в состоянии ссылаться ActiveJob
в вашем рельсы приложение, чтобы создать и епдиеие работу:
# app/jobs/guests_cleanup_job.rb
class GuestsCleanupJob < ActiveJob::Base
queue_as :default
def perform(*args)
# Do something later
end
end
# usage
GuestsCleanupJob.enqueue(record)
GuestsCleanupJob.enqueue(record, options)
Там уже несколько подводных камней, хотя, большая разница в том, что это не совсем то же самое ActiveJob внутри Rails 4.2.beta, как и недостатки генераторов, обратные вызовы и синтаксис немного отличаются. Я написал сообщение в блоге, если вы хотите больше копать: http://kinopyo.com/blog/use-activejob-in-rails-4-1/
Спасибо! это определенно суммирует основные проблемы, которые я натолкнулся на себя, пытаясь сделать это. – elsurudo