0
ENV['RAILS_ENV'] ||= "development"
require File.dirname(__FILE__) + '/../../../config/boot'
require File.join(Rails.root, 'config/environment')

これは私のrailsアプリケーションの最初の部分です。これらの3行の目的を誰かが説明できますか?

4

2 に答える 2

2

起動時にrailsが何をするかを詳しく知りたい場合は、railsガイドにアクセスして、初期化の章を読んでください。

http://guides.rubyonrails.org/initialization.html

于 2012-06-26T12:51:46.013 に答える
1

#!/ usr / local / ruby​​-current / bin/ruby-このファイルの実行方法をUnixライクなシステムに指示するシバンコメント。

ENV ['RAILS_ENV'] ||="開発"-選択した作業環境が開発環境であるかどうかを確認します。そうでない場合は、環境を開発に設定します。

Railsの初期化プロセス:任意のアプリケーションの/ publicディレクトリに、dispatch.cgi、dispatch.fcgi、dispatch.rbの3つのファイルがあります。Railsプロセス(CGIプロセス、高速CGIプロセス、またはRubyプロセスとして)を起動するようにサーバーを構成する方法によって、3つのファイルのどれが実行されるかが決まります。実行されるディスパッチファイルは、Rails環境をロードし、ディスパッチャを呼び出すことによってWebサーバーからの要求に応答します。boot.rbは、Rails_Root環境変数が設定されていることを確認します。まだ実行されていない場合、boot.rbは/configの1レベル下のディレクトリとして定義します。Rails_Rootが設定されると、ベンダー/レール内の凍結されたレール環境の存在をチェックすることにより、レールをロードするプロセスを続行します。このフォルダーが存在する場合、boot.rbはそこからRails初期化子を必要とします。Railsのローカル(フリーズ)コピーがない場合、boot.rbはrubygemsライブラリをロードし、environment.rbをスキャンして、RAILS_GEM_VERSIONが定数として定義されているかどうかを確認します。boot.rbがある場合、その定義されたバージョンのRailsの初期化子がロードされます(そのバージョンのRailsがシステムに存在しない場合はエラーが発生します)。RAILS_GEM_VERSIONが定義されていない場合、boot.rbはシステムにインストールされている最新バージョンのRailsを初期化しようとします。

于 2012-08-08T10:55:12.843 に答える