免责声明:虽然我在Rails应用程序的上下文中询问,但我不是在谈论Rails帮助程序(即查看帮助程序)
- def dispatch_job(job = {})
- #Do something
- end
现在我想从几个不同的地方使用它(主要是控制器,还有一些BackgrounDRb工作者)
这样做的首选方法是什么?
我可以想到两种可能性:
1.使用类并使助手成为静态方法:
- class MyHelper
- def self.dispatch_job(job = {})
- end
- end
- class MyWorker
- def run
- MyHelper.dispatch_job(...)
- end
- end
- module MyHelper
- def self.dispatch_job(job = {})
- end
- end
- class MyWorker
- include MyHelper
- def run
- dispatch_job(...)
- end
- end
3.我还不知道的其他可能性
- ...
第一个更像Java,但我不确定第二个是否真的适合使用Ruby的模块.