Работник РАЗМЕ выделяет «NometodError: undefined метод».

StackOverflow https://stackoverflow.com/questions/4018276

  •  26-09-2019
  •  | 
  •  

Вопрос

Я понятия не имею, что я здесь сделал, но я попытался получить один контроллер в рельсах, чтобы покинуть работу на репарацию, что затем работник соединяется и делает тяжелый подъем (то есть сравнения, записи базы данных).
Тем не менее, задачи даже не работают, поскольку нет четких инструкций для настройки репрострадации.

Скопируйте и вставьте ниже:
Также доступен в формате Gist!

Это линия исключения от Hopttoad:

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 perform к def self.perform
Тогда это работало

Спасибо,
Люк Карпентер

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top