2010-11-18から1日間の記事一覧

Rails 3.0 の ActiveRecord::Base.find_all の挙動について

月別アーカイブを作成したい時などに DBMS 独自の時刻関数を使う事は多いと思いますが、今回そのあたりに関連して ActiveRecord の挙動でハマったのでメモ。例えば次のような SQL を PostgreSQL の psql コマンドから実行したとします(データベースに costs…

Rails 3.0 の scope で first は使えない

例えば次のような scope を costs.rb に定義します。 class Cost < ActiveRecord::Base scope :next, lambda{|day| where(["occured_on > ?", day]).order("occured_on").first } end これはシンタックスエラーにはなりませんが、実行すると次のようなエラー…