UPDATE
Jest to lepsze rozwiązanie teraz :), spróbuj ten klejnot activejob_backport, łatwiejszą instalację, takie same funkcje jak szyny 4.2.
UWAGA: nieaktualnej treści PONIŻEJ
Aby korzystać ActiveJob w Rails 4.1, trzeba zrobić to jako pierwszy.
# 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
Następnie powinieneś być w stanie odwołać ActiveJob
w aplikacji szyn, aby utworzyć i enqueue pracy:
# 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)
Są tam kilka pułapek jednak największą różnicą jest to nie dokładnie takie same ActiveJob wewnątrz Rails 4.2.beta, podobnie jak brak generatorów, callbacki i składnia są nieco inne. Napisałem post na blogu, jeśli chcesz kopać więcej: http://kinopyo.com/blog/use-activejob-in-rails-4-1/
Dzięki! to definitywnie podsumowuje główne głupstwa, które wpadłem na siebie, próbując to zrobić. – elsurudo