Ruby 1.9.2 と Ruby on Rails 3.2.2 を使用しています。次のような状況があります。
class MyClass < ActiveRecord::Base
include MyModule1
include MyModule2
include ...
# Note: This method statement should override the method mixedin by MyModule1.
def my_method(*args)
# ...
end
end
module MyModule1
def my_method(*args)
raise "NotImplementedError - The :my_method is not implemented yet"
end
end
# /app/views/layouts/application.html.erb
if @my_class.my_method
All right!
end
ページを参照する Web アプリケーションを開始すると、インクルードされている をオーバーライドしたとしても、エラーが発生します"NotImplementedError - The :my_method is not implemented yet"
(上記のコードで読み取ることができます)。クラスの前にビューをロードするために発生しますか? または何?を適切にオーバーライドするには、どのように状況を処理すればよいですか?my_method
MyClass
MyModule
MyClass
my_method