我有大约 20 个不同的Active Jobs,我现在意识到它们都需要一种before_perform
方法来在控制器的上下文之外设置 PaperTrail 内容。
我打算把这个before_perform
方法放在一个助手中,然后在每个作业中包含这个助手,但我得到了一个错误:
MyApp:JobHelpers:Module 的未定义方法“before_perform”
我认为这是因为有问题的模块只是一个模块,而不是一个活动作业。如何避免before_perform
在每个活动作业中重复相同的 4 行方法?
Job_helper:
module MyApp
module JobHelpers
before_perform do |job|
# stuff to do
end
end
end
工作:
require 'my_app/job_helpers'
class TheJob < ActiveJob::Base
include MyApp::JobHelpers
# Do more stuff
end