我不知道我在这里做的,但我试图得到Rails的一个控制器来排队一个工作到Resque,然后工人连接并做繁重(IE比较,数据库条目)。< BR> 但是,任务甚至没有运行,因为还有用于设置Resque起来没有明确的指示。

复制和粘贴的如下:点击 提供主旨格式!

这是从黾异常行:

NoMethodError: undefined method 'perform' for Violateq:Module

这是在“工人”文件的内容:

module Violateq
  @queue = :violateq

  def perform(nick, rulenumber)
    # Working for the weekend!!!
    puts "I got a nick of #{nick} and they broke #{rulenumber}"
    @violation = Violation.new(nick, rulenumber)
    puts "If you got this far, your OK"
    log_in(:worker_log, {:action => "Violate d=perfom", :nick => nick, :rulenumber => rulenumber, :status => "success"})
    #rescue => ex
    # notify_hoptoad(ex)
    # log_in(:worker_log, {:action => "Violate d=perfom", :nick => nick, :rulenumber => rulenumber, :status => "failure"})
  end

end

这是在 “web_controller” 文件的内容:

class IncomingController < ApplicationController
  require 'mail'
  skip_before_filter :verify_authenticity_token

  def create
    message = Mail.new(params[:message])
    # Push the message into the queue
    Resque.enqueue(Violateq, message.from.to_s, message.subject.to_s)
    log_in(:endpoint_log, {:action => "IncomingController d=create", :subject => message.subject, :message => message.body.decoded})
    render :text => 'success', :status => 200 # a status of 404 would reject the mail
  rescue => ex
      notify_hoptoad(ex)
      render :text => 'failure', :status => 500
  end
end

感谢您对我付出的时间,如果你想的任何详细信息,请不要犹豫与我联系,结果 路加卡彭特

有帮助吗?

解决方案

固定。结果 改变def performdef self.perform结果 然后,它的工作

谢谢,结果 路加卡彭特

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top