Попытка выполнить задание после сохранения записи.
Вот мой код:
/app/models/some_todo_model.rb
class SomeTodoModel < ApplicationRecord
belongs_to :user
after_save :create_job_for_notificate_on_due_date
def create_job_for_notificate_on_due_date
EmitsNotificationsJob.set(wait_until: self.due_date).perform_later()
end
end
/app/jobs/emits_notifications_job.rb
class EmitsNotificationsJob < ApplicationJob
queue_as :default
# discard_on ActiveJob::DeserializationError
def perform()
end
end
EmitsNotificationsJob.set(wait_until: self.due_date)
хорошо его настраивает.
Но когда я звоню perform_later
, у меня появляется следующая ошибка:
NoMethodError: undefined method 'name' for #<EmitsNotificationsJob:0x000056387e74ce78>
Я не понимаю свою проблему, так как я следую документации здесь .
Как это может быть по той же причине, если я раскомментируюdiscard_on
строка, у меня появляется следующая ошибка:
NoMethodError: undefined method 'discard_on' for EmitsNotificationsJob:Class