同じ名前のクラスとモジュールがあります。
module Pushover
def configure
..
end
end
module MyModule
class Pushover
def blah
Pushover.configure
end
end
end
Pushover.configure
呼び出しが含まれているクラスに向けられるため、これは機能しません。さて、明らかな修正は、クラスの名前を変更することです。ただし、モジュールは gem からのものであり、クラスは DSL で必要な命名規則に準拠しています。したがって、理想的には、両方が同じままであるべきです。2 番目のヘルパー クラスを作成し、それを介して呼び出すこともできますが、それは少しハックに思えます。私の推奨する解決策は、モジュール メソッドを直接参照することです。
この分野に関する既存の質問はすべて、反対の方向に明確になっているようです。つまり、モジュールではなくクラス参照を取得したいのです。
指定するときにクラスではなくモジュールを意味することを Ruby に通知する方法はありますPushover
か?