2010-01-01から1年間の記事一覧

ロケールに変数を使用する

ロケールファイルに変数を仕込む。形式は{{変数名}}。 # RAILS_ROOT/config/locales/ja.yml en: hello: "hello {{name}}!" ローカライズする際に変数値を渡す。変数名となるハッシュのキーは予約されている:default, :scope以外なら何でもOK。 I18n.t(:hello…

group(ActiveRecord::QueryMethods)とsize

ActiveRecordのgroupメソッドが返すGROUP BYした結果に対してsizeメソッドを呼び出すとグループ毎の件数を返す。 # グループ毎の該当件数 Person.group(:gender).size #=> {"male" => 10, "female" => 8} # 本当のレコード該当件数を取得するにはlengthメソ…

イテレータのショートカット

Symbolを&を使ってProc化するとイテレータのショートカットなどができる。 # これを collection.map {|member| member.id} # このように書ける。(:idの前に&を付けて、SymbolをProc化している。) collection.map &:id 便利だな、こりゃ。以下を参考にしま…

X is not missing constant Y

Railsで階層化されたモデルの関連レコードのセッターメソッドを使用すると「X is not missing constant Y」というエラーが発生する。 # 以下のモデルがあったとして # models/hatena/diary.rb # models/hatena/comment.rb class Hatena::Diary < ActiveRecor…