ブログ アプリケーションの environment.rb で次の行のソースを見つけたい
Blog::Application.initialize!
見つかったら初期化!メソッドは、ソース コードの 1 か所でのみ定義されます。
railties/lib/rails/application.rb
def initialize!(group=:default) #:nodoc:
raise "Application has been already initialized." if @initialized
ただし、これはインスタンス メソッドです。
Railsコンソールでいくつかの実験を行いました:
Blog::Application.initialize! # => Application has been already initialized
Blog::Application.method(:initialize!) # => undefined method for Class
Blog::Application.instance_methods.include?(:initialize!) # => true
initialize!
Application クラスで明らかに呼び出し可能な場合に、未定義のメソッドを取得するのは奇妙です。このコードを理解するのを手伝ってください。