Как запустить Resque в консоли? - PullRequest
0 голосов
/ 10 марта 2019

Я пытаюсь вызвать работу в консоли, но всегда получаю ошибки.

Следуют следующие документы:

Создан следующий файл: (Библиотека / работа / archive_survey_jobs.rb)

module Jobs
  class ArchiveSurveysJob < ActiveJob::Base
    @queue = :setup

    def perform(survey_type)
      if SurveyTypes.all_classes.map(&:to_s).include?(survey_type)

        surveys = Survey.where(something: 'stuff')\
                        .where.not(something: 'stuff',
                                   something: 'stuff')

        surveys.each do |survey|
          do_something
        end
      end
    end
  end
end

Я понимаю, что могу сделать что-то вроде Resque.enqueue(ArchiveSurveysJob, 'string_here')

Как я могу вызвать это в консоли? Если я попробую: Jobs::ArchiveSurveysJob.create(survey_type: 'string_here'), когда я проверял статусы восстановления, это приводило к ошибке: `Задача не выполнена из-за ошибки:

неопределенная локальная переменная или метод args для #

Если я попробую это:

Jobs::ArchiveSurveysJob.perform(`string_here`)

Или:

Jobs::ArchiveSurveysJob.perform_now('string_here')

Я получаю:

ArgumentError: неверное количество аргументов (задано 0, ожидается 1..2)

Пожалуйста, дайте мне знать, если мне не хватает какой-либо документации или я делаю что-то не так.

1 Ответ

0 голосов
/ 11 марта 2019

Как мне удалось это сделать, создав задачу Rake и вызвав туда Job.

...