メソッドの呼び出しでクラス メソッドを動的に追加したいacts_as
。私のファイル構造は次のようになります( http://guides.rubyonrails.org/plugins.htmlから取得):
module ActsAsFoo
extend ActiveSupport::Concern
included do
end
module ClassMethods
def acts_as_foo(options = {})
include ActsAsFoo::LocalInstanceMethods
end
end
module LocalInstanceMethods
def instance_method
# This method works without any issue
end
end
end
class Bar
acts_as_foo
end
クラスが を呼び出すときにのみクラス メソッドを宣言できるようにしたいacts_as_foo
。インスタンス メソッドは で動作しLocalInstanceMethods
ます。最も簡単な方法はモジュールに追加することですが、他のすべてのクラスにもこの方法があります。私はすでにメソッドに追加しようとしていdefine_method
ますacts_as
が、未定義のメソッドを返します。何か案が ?