0

Railsアプリケーションを調べていて、rails.rbファイルがいたるところにあることに気づきました。私のrubygemsディレクトリでは次のようになります。

...gems\devise-2.0.4\lib\devise\rails.rb
...gems\cucumber-rails-1.3.0\lib\cucumber\rails.rb
...gems\railties-3.2.3\lib\rails.rb

「railsxxx」のようなコマンドを発行するたびに実行されると思います。したがって、これらの余分なrails.rbファイルはすべて、元のrails.rbファイルと組み合わされて、基本的に1つの大きなrails.rbファイルになります。基本的に、「rails xxx」と入力すると、すべてが通過しますか?

いくつかの確認に加えて、これについてもう少し知識を探しています。ありがとう。

4

2 に答える 2

2

これらのrails.rbファイルが何をしているかを理解する最善の方法は、ソース コードを読むことです。

ご覧のとおり、どのライブラリでも、ファイルは異なるスコープを想定しています。rails.rb一般的な動作は、Rails プロジェクトから読み込まれたときにライブラリを初期化するために必要なコードがファイルに通常含まれていることです。

ところで、これは script/rails コマンドとは関係なく、"big rails.rb" ファイルはありません。

于 2012-09-11T18:35:49.413 に答える
1

ファイルは生成されませんが、使用しているこれらのライブラリの単なるソース ファイルです。

この場合、それらはおそらく Rails 関連のクラスであり、何らかの方法で Rails を拡張するか、Rails を変更するか、Rails と対話するライブラリーを作成します。

Rails は Ruby の世界では非常に一般的なフレームワークであるため、ほとんどのライブラリは Rails と何らかの形で統合されています。

実行時にすべてがロードされるわけではありませんがrails XXX、アプリケーションがこれらのライブラリをロードすると、Rails との何らかの統合を提供するために rails.rb ファイルが実行される場合があります。

于 2012-09-11T18:36:47.097 に答える