0
module YourApp
   class Application < Rails::Application
      config.my_custom_variable = :custom_value
   end
end

これは、Rails アプリケーションで機能します。これがルビーの観点からどのように機能するかを理解したいだけです。私の最低限の Ruby の知識によると、config(Rails::Application::Configuration) オブジェクトの my_custom_variable には getter と setter(my_custom_variable=) が必要です。これは私のカスタム変数であるため、Configuration オブジェクト インスタンスには存在しません。動的に作成/追加される方法。?

誰か説明してもらえますか?、これを理解するための適切なドキュメントを教えてください。

4

2 に答える 2

2

Rails はmethod_missinghere を使用して、 on で呼び出されたメソッドをキャッチしconfigます。次に、それをオプションのハッシュに追加するだけです。

関連するソース コードはこちらで確認できます。

于 2013-11-02T06:22:31.467 に答える