ウェブサービスを作っています。

Pacecar が便利

Pacecar とは

便利な named_scope のモジュール集です。
Paperclip, Shoulda, Factory Girl, Clearance など、素晴らしいライブラリを多数開発されている thoughtbot 製。

class SomeModel < ActiveRecord::Base
  include Pacecar
end

だけで、『表示可能で投稿時刻が過去で本文に「あ」って書かれてる記事を 10 件投稿日時降順にとる』、みたいなことが

Post.visible.posted_at_in_past.body_matches('').limited(10).by_posted_at(:desc).all

と書けるようになります。

インストール

$ gem install pacecar

だと、Rails3 用のが入ってしまうので、Rails2 で使う場合は

$ gem install pacecar --version '= 1.2.0'

とします。

詳しくは

thoughtbot/pacecar · GitHub
この README とソースを読めば何とかなります。

最後に

Pacecar の存在を知ったのは Help me, hackers! のソースを読んだときです。
Page not found · GitHub


ライブラリを作ってくれた thoughtbot と、Pacecar の存在を知るきっかけになった komagata さんに感謝です。