Railsは、どうやって動いているか
サーバの起動
$ ./script/server
- WEBrick(Rubyサーバ)が3000番ポートで起動
-
configディレクトリ
-
environment.rb
- 擬似変数「__FILE__」。File.dirname関数でDIR名を取り出す。File.join(a,b)は、aとbとの名前を結合。
- boot.rbが呼び出される
- Railsの初期化:初期化オプションは、do |config| end ブロックに記述する。
- 様々な初期化を行う。例:セッションをDB保管する
-
boot.rb
- Rils本体(Railsクラス)が読み込まれる
- Rilities: ActiveRecordやActiveSupportなどのフレームワークを呼び出す
-
environment.rb
環境(動作モード)によって異なる初期化処理
- development、test、production
- config/environmentsに任意の環境名でファイルを作れば、自分用の実行環境ができる
route.rb
- Webブラウザのユーザが入力したURLと、それに応じて起動するコントローラとの対応付け(ルーティング)を記述したファイル
- map.connectメソッドでURLと、コントローラ/アクションを対応付け
- 初期化時に、route.rbを実行すると、ActionController::Routing::Routesというオブジェクトの内部に、ブロック「do |map| ~~end」が登録される。
- Webアクセスがある毎に、このオブジェクトがブロックを実行し、該当のコントローラを見つける。