【问题标题】:DelayedJob ion Rails 3: Exception NameError -> uninitialized constant Delayed::JobDelayedJob ion Rails 3:异常 NameError -> 未初始化的常量 Delayed::Job
【发布时间】:2012-06-02 21:10:08
【问题描述】:

我正在构建一个 Rails 3 应用程序,它使用 delayed_job 在后台调度异步任务。

当我使用.delay 方法或.handle_asynchronously 来排队作业时它工作正常,但是当我使用自定义作业时它不起作用。

这就是我所拥有的:

在我的 lib 文件夹中,我在一个名为 my_job.rb 的文件中有带有 perform 方法的 Ruby 类,其中包含:

class MyJob < Struct.new(:text)
  def perform
    puts text
  end
end

在我的控制器中我有这个:

Delayed::Job.enqueue MyJob.new('test')

当我调用控制器时,我收到以下错误:

Exception NameError -> uninitialized constant Delayed::Job

关于如何解决这个问题的任何想法?

【问题讨论】:

    标签: ruby-on-rails-3 delayed-job


    【解决方案1】:

    检查你是否正确安装了delayed_job; https://github.com/collectiveidea/delayed_job#installation(请注意,如果您使用 ActiveRecord 作为后端,gem 现在称为 gem 'delayed_job_active_record')

    将这里的说明从delayed_job 2.x 升级到3.0:https://github.com/collectiveidea/delayed_job#upgrading-from-2x-to-300-on-active-record

    【讨论】:

      猜你喜欢
      • 2011-10-02
      • 1970-01-01
      • 2020-04-05
      • 2011-10-04
      • 1970-01-01
      • 2011-07-04
      • 1970-01-01
      • 2016-07-15
      • 2017-07-10
      相关资源
      最近更新 更多