Ruby on rails 4 Rails 4活动作业使用不同的队列适配器并具有NoMethodError

Ruby on rails 4 Rails 4活动作业使用不同的队列适配器并具有NoMethodError,ruby-on-rails-4,gem,nomethoderror,rails-activejob,Ruby On Rails 4,Gem,Nomethoderror,Rails Activejob,我试图从控制器方法运行ActiveJob作业,但失败了,我无法找到问题的正确位置: app/controllers/users\u controller.rb 如果您有任何想法,我将不胜感激。基本上,排队适配器有一个小问题: 我更喜欢使用,因为它确实可以很好地工作 因此,我必须指定我想要一个与默认适配器不同的排队适配器: config/application.rb 安装RabbitMQ并启动它: 可在不同的终端选项卡中选择 $rabbitmq服务器 在preferible other termi

我试图从控制器方法运行ActiveJob作业,但失败了,我无法找到问题的正确位置:

app/controllers/users\u controller.rb


如果您有任何想法,我将不胜感激。

基本上,排队适配器有一个小问题: 我更喜欢使用,因为它确实可以很好地工作

因此,我必须指定我想要一个与默认适配器不同的排队适配器: config/application.rb

安装RabbitMQ并启动它:

可在不同的终端选项卡中选择

$rabbitmq服务器

在preferible other terminal tab中安装gem sneakers并运行其deamon:

$sneakers work ActiveJob::QueueAdapters::SneakerAdapter::JobWrapper -需要应用程序/作业/策略\u检查\u job.rb


哪一条是9号线?风景怎么样?看起来作业已排队。刚刚添加了行号hi,我有一个错误“`”:未初始化常量ActiveJob NameError
1   class UsersController < ApplicationController
2       def new
3         @user = User.new
4       end1 
5   
6     def create
7       @user = User.create(user_params)
8       PoliciesChecksJob.new(@user.id).enqueue
9       # redirect to somewhere
10   end1 
11  end
class PoliciesChecksJob < ActiveJob::Base
  queue_as :default

  def perform(user_id)
    SearchPoliciesCommands.new.execute(user_id)
  end
end
Started POST "/users" for ::1 at 2015-03-30 15:01:03 +0100 
Processing by UsersController#create as HTML
...(params)
(0.1ms)  BEGIN
... (inserts the user)
(0.3ms)  COMMIT 
[ActiveJob] Enqueued PoliciesChecksJob (Job ID: da...e2) to Sneakers(default) with arguments: 1

Completed 500 Internal Server Error in 76ms

NoMethodError (private method `warn' called for nil:NilClass):   
app/controllers/users_controller.rb:8:in `create'
config.active_job.queue_adapter = :sneakers