【发布时间】:2017-07-08 01:22:00
【问题描述】:
我的控制器用create方法定义如下。
class AtestController < BaseController
def create
result = create_something(params)
@connection = Bunny.new
@connection.start
@channel = @connection.create_channel
bunny = RabbitPublisherService::RabbitPublisher.new(@channel,@connection)
render :json => trigger, :status => :created
end
end
My Rabbit Publisher Service 定义如下
module RabbitPublisherService
class RabbitPublisher
private
attr_accessor :channel, :connection
def initialize(channel, connection)
puts "I reached here"
@channel = channel
@connection = connection
end
def publish(message)
q = @channel.queue("task_queue", :durable => true)
q.publish(message, :persistent => true)
puts "Message is Published..."
sleep 1.0
@connection.close
end
end
end
当我尝试从控制器创建方法 RabbitPublisherService::RabbitPublisher.new 调用此服务时,我收到一个未初始化的常量错误说 :error_message=>"未初始化的常量 AtestController::RabbitPublisherService"
有人可以帮我找出我做错了什么吗?
【问题讨论】:
-
尝试将
include RabbitPublisherService添加到控制器
标签: ruby-on-rails ruby-on-rails-5