У меня около 20 различных Active Jobs, которые я сейчас понимаю, каждый будет нуждаться в методе before_perform
, в котором можно установить PaperTrail content outside the context of the controller.Ruby: Выполнить метод в контексте базового класса
Я планировал поставить этот before_perform
метод в качестве помощника, а затем в том числе помощник в каждом из рабочих мест, но я получаю сообщение об ошибке:
undefined method `before_perform' for MyApp:JobHelpers:Module
Я имею в виду, что это происходит потому, что модуль вопрос это просто модуль, а не активное задание. Как избежать повторения того же метода 4 линии before_perform
в каждом из моих активных заданий.
Job_helper:
module MyApp
module JobHelpers
before_perform do |job|
# stuff to do
end
end
end
The_job:
require 'my_app/job_helpers'
class TheJob < ActiveJob::Base
include MyApp::JobHelpers
# Do more stuff
end
Было бы полезно, если бы вы показали по крайней мере, скелет хелперов модуля и как вы пытаетесь использовать его в классе. –
Хорошо, я добавил помощника и там, где он включен в задание. –
Как вы это называете? –