我以通常的方式定义了一个 Sinatra 助手:
module Sinatra
module FooHelper
# code goes here
end
end
在我的助手中,除其他外,我想添加一个方法Numeric
:
module Sinatra
module FooHelper
class ::Numeric
def my_new_method
end
end
end
end
但是,为了不显眼,我只想在我的 Sinatra 助手实际包含在应用程序中时才添加此方法;如果没有人运行helpers Sinatra::FooHelper
,我不想影响任何东西(这似乎是对 Sinatra 扩展的合理期望)。
包含我的助手时是否会触发任何钩子,这将使我仅在发生这种情况时才添加我的方法?