Я использую драгоценный камень Осьминога.Если я вызываю отложенный метод для активного объекта записи, я получаю следующую ошибку:
Delayed::DeserializationError:
Job failed to load: undefined method `[]' for nil:NilClass
Ошибка возникает, только если Octopus включен.
Задержанные задания, которые не имеют ссылок на объекты активной записи, работают должным образом.
Является ли единственный способ решить эту проблему, изменить весь код:
active_record_object.delay.trigger_custom_action(another_active_record_object)
с помощью фиктивного класса, который использует очень примитивные аргументы, и перезагрузить объекты активной записи внутри метода?
class Jobs
def self.trigger_custom_action(id1, id2)
active_record_object = Something.find(id1)
another_active_record_object = Something.find(id2)
active_record_object.trigger_custom_action(another_active_record_object)
end
end
Jobs.trigger_custom_action(active_record_object.id, another_active_record.id)