[英]access all events from clockwork manager to controller
我正在使用gem發條來運行計划的作業。 我需要訪問在clock.rb中定義的所有事件,以便在失敗時手動觸發發條事件。
為此,我通過在clockwork/manager.rb
文件中添加attr_reader: events
來創建clockwork/manager.rb
。
clock.rb
module Clockwork
every(10.seconds, 'job1') do
p Clockwork.manager.events
end
end
通過在clock.rb中使用Clockwork.manager.events
,它返回在clock.rb中定義的所有事件。
mycontroller.rb
module Admin
class MyController < AdminController
require 'clockwork'
def index
@events = Clockwork.manager.events
end
end
end
但是在控制器中使用它時,它返回空值。
如何獲取控制器中的所有發條事件?
在development
模式下,並非在啟動過程中加載了所有應用程序代碼,可能是您定義事件的代碼尚未加載。
您可以在控制器中require
該特定文件,之后它們應該是可見的。
在production
模式下,所有代碼都在啟動期間加載,因此在該模式下它應該已經可以工作了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.