おおいしつかさ


旅行とバイクとドライブと料理と宇宙が好き。
Ubie Discoveryのプログラマ。
Share:  このエントリーをはてなブックマークに追加

ARのwhere区を簡単に扱えるようになる「Ez-Where2」に触れてみた

RailsのActiveRecordで、Where区が複雑になるのはよくあることです。特に検索機能などで、指定された条件によってwhere区を用意するときはコードが汚くなりがちです。
そんなときに使えるのが「Ez-Where2」。超簡単にwhere区が構築できちゃいます。

インストール。

./script/plugin install http://opensvn.csie.org/ezra/rails/ez_where_two/  

使い方。

cond = Caboose::EZ::Condition.new  
cond += cc(:users) {name == params[:user_name]}  
cond += cc(:mobile) {signature == params[:mobile_id]}  
ccというメソッドがwhere区を構築する。このわかりにくいメソッド名だけはいただけないけど。includeやjoinを使っていてテーブル名の指定が必要なときは最初にそのテーブル名をシンボルで指定してあげて、続くブロックでwhere区の条件を書く。+ でつなげればAND条件になり、 でつなげればORになります。詳しくはREADMEを参照。他にもいろいろ便利そうなメソッドが用意されています。