Railscasts #95, #22 - #23
前回の続き。
#95 Railscasts - More on ActiveResource
- ActiveResource で簡単な認証をするには self.site = "http://user:password@localhost:3000/" でいいよ
- Product.find(:all, :params => { :search => 'table' }) とかしてパラメータが渡せるよ
- リソースにカスタムアクションを追加した場合は Product.get(:recent) とか Product.find(1).put(:discontinue) とかできるよ
それから、復習もすこし。
#22 Railscasts - Eager Loading
- find に :include を指定したら eagar loading (関連レコードの一括読み込み)ができるよ
- 複数の関連をロードしたければ配列で、関連のネストをしたければハッシュで指定できるよ
#23 Railscasts - Counter Cache Column
- 関連レコードの数を毎回かぞえると遅いよ
- 関連レコードを :include する方法もあるよ
- :関連名_count というカラムを作ってキャッシュする方法があるよ
- migrationを書くときには、カラム情報をリセットして、その時点の既存レコードを設定してあげようね
- lengthを使うとキャッシュを使わないよ
- belongs_to に :counter_cache => true をつけておこうね