【发布时间】:2012-12-15 18:44:42
【问题描述】:
我有一个模块定义为:
module MyApp
module Utility
def Utility.my_method
我想在其他几个类中使用该方法。但我不想打电话:
MyApp::Utility.my_method
我宁愿打电话:
Utility.my_method
这样合理吗?我试过include MyApp::Utility 和include MyApp 无济于事。
【问题讨论】:
-
include MyApp在 Ruby 1.9.3 中为我工作。然后我可以调用 Utility.my_method。不过这里没有使用 Rails。 -
当你包含一个模块时,它的方法变成了对象的实例方法,所以你可以只做
include MyApp::Utility然后my_method而不是Utility.my_method