Rails Wayを読む(1)
昔、「Rails Way」って本を買ったんですが、よくわかんなくて頓挫しておりました。
最近、仕事でRailsに手を出し始めました。やっぱり実際に使ってみないとわからんですよね。「今だったら理解できるかも!」と思い、件の本を引っ張り出してきた次第です。
1. Railsの環境とコンフィグレーション
まずはpublic/dispatch.rbを実行します(rails2だとないの?gemの方にあるからそれを見てるのか?どうやって?)
config/environment.rbを読み込みます(だとすると、実質的なエントリポイントはここ?)。そのあとで読み込むRailsのバージョンを定義しています。
RAILS_GEM_VERSION = '2.3.4' unless defined? RAILS_GEM_VERSION
config/boot.rbを読み込みます(ここらへんまでrequireでファイルを読み込んでいます。まだRailsをロードしていないからですね)boot.rbには
# Don't change this file! # Configure your app in config/environment.rb and config/environments/*.rb
と書いてあります。自分のアプリケーションの設定はconfig/environment.rbかconfig/environments/の下に書けよ、ってことですね。
boot.rbのなかには、RailsモジュールとBootクラス(およびその派生クラス)の定義が書いてあります。一番最後の行に
# All that for this: Rails.boot!
という行があります。Rails#boot!のなかでは
- config/preinitializer.rbがあったら読み込む
- ブートストラップ*1の選択(vender/railsがあったらそっちを読み込むらしい)。適切なBootインスタンスを生成するってこと。
- Boot#runを実行。VenderBootとGemBootで動きが違うようです。GemBootだと
で、やっとconfig/environment.rbに戻ってくる。
Rails::Initializer.run do |config| # 省略 end
ここで追加のロードパスを設定したり、タイムゾーンの設定をすることができるようです。
疲れたので続きは明日。このペースだと1冊読み終わるのにどれだけかかるのか。気が遠くなります。
Rails Way (Professional Ruby Series)
- 作者: Obie Fernandez,豊田祐司,株式会社クイープ
- 出版社/メーカー: 翔泳社
- 発売日: 2008/12/04
- メディア: 大型本
- 購入: 2人 クリック: 50回
- この商品を含むブログ (26件) を見る
*1:コンピュータを起動すること。電源を投入してから操作可能な状態になるまで。要は初期化処理のことか?