Я пытаюсь вызвать работу в консоли, но всегда получаю ошибки.
Следуют следующие документы:
Создан следующий файл:
(Библиотека / работа / 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)
Пожалуйста, дайте мне знать, если мне не хватает какой-либо документации или я делаю что-то не так.