LoginSignup
8
7

More than 5 years have passed since last update.

Squeel

Last updated at Posted at 2013-11-27

Squeelをためしてみたら、かなりうれしかった。

さて、2週間前の日付以降のArtcle全部を検索するクエリー

以下の2つ、どちらがよみやすいか?
(ちなみに2.weeks.agoは、今日から数えて2週間前の日付を返すrubyのネイティブメソッドです)

Rails3の通常の記述によると

Article.where ['created_at >= ?', 2.weeks.ago]

...Squeeで書くと以下の通り

Article.where{created_at >= 2.weeks.ago}

私には、Squeelが肌にあいます。ちょっとした違いなんですけどね。

ちなみに、これをnamed_scope定義して

app/model/artcle.rb にて

def self.written_since(date)
    Article.scoped.where{created_at >= date}
end

すると

Article.written_since(2.weeks.ago)

って書けて、より直感的?

参考URL
#354 Squeel - RailsCasts

MetaWhere & MetaSearch - RailsCasts

ActiveRecord 3を使う(4) 比較演算が簡単になるMetaWhere

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7