ヒカラボさんのイベントで発表したスライドです
ActiveRecord における DB との接続確立方法をきちんと理解できてなかったので、pry-byebug を使いながらコードを読み解いてみる。 Railsのversion は 4.2.0 という前提で。 establish_connection blog.livedoor.jp sonots さん解説の通り、Rails を起動すると establish_connection メソッドが呼び出される。 # lib/active_record/connection_handling.rb def establish_connection(spec = nil) spec ||= DEFAULT_ENV.call.to_sym resolver = ConnectionAdapters::ConnectionSpecification::Resolver.new configuratio
今回調査すること Requestがどのように受け渡されるか ActionControllerのバージョン: 2.3.5 ご参考 Railsノート - ActionController::Request の生成過程を Webサーバーまでさかのぼる こっちのが詳しく書かれています。いろいろ勉強になります。 最初の流れ httpリクエストの簡単な流れは,リクエスト=>処理=>レスポンスだ。 その受け渡しの部分を順番に見ていく。 リクエスト まずは、HTTPリクエストを受け取り、処理側に渡す部分。 Railsでは今Rackが標準で利用されている。詳しく調べてないけどRackはHTTPサーバ(MongrelやPassenger)とアプリケーションの間で動くミドルウェアでアプリケーションから見たリクエストをどのHTTPサーバから来ても同一のものに変更してくれるものだと認識している。 Rackのサンプル
ActiveRecordのsaveやupdate_attribute(s)がどのような仕組みになっているのかのメモ 環境 rails1.2.3 ソースコード # activerecord/lib/active_record/base.rb 1545 def save 1546 create_or_update 1547 end # 中略 1584 def update_attribute(name, value) 1585 send(name.to_s + '=', value) 1586 save 1587 end # 中略 1591 def update_attributes(attributes) 1592 self.attributes = attributes 1593 save 1594 end # 中略 1787 private 1788 def create_or_upda
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く