带有ActiveJob gem的Rails 4.1 - 未初始化的常量ActiveJob

Mar*_*lar 3 ruby-on-rails rails-activejob

我跟随EngineYard的活跃工作入门.文章指出:

如果您希望默认情况下可以使用活动作业,则需要Rails 4.2.0beta1或更高版本(在旧版本的Rails中,您可以将其作为gem使用)

我想在我的Rails 4.1项目中使用ActiveJob.我将ActiveJob添加到我的gemfile中gem 'activejob'.根据这篇文章,我有:

#config/initializers/active_job.rb
ActiveJob::Base.queue_adapter = :resque
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时,rails server我收到以下错误:

config/initializers/active_job.rb:1:in':未初始化的常量ActiveJob(NameError)`

编辑 - 修正错字"宝石活动工作"

更新1

按照下面的solydest建议,添加require 'active_job'到application.rb允许我不再收到uninitialized constant ActiveJob错误,但是undefined method perform_later'当我尝试调用我的工作时收到错误.我遵循边缘导轨并将代码类似于以下代码排队:

MyJob.perform_later(record)
Run Code Online (Sandbox Code Playgroud)

我的工作班的开始:

class MyJob < ActiveJob::Base
  queue_as :images
  def perform(id)
Run Code Online (Sandbox Code Playgroud)

sol*_*est 8

require 'active_job'在config/application.rb中添加了所有其他require指令,并为我解决了这个问题.