named_scopeは大変素晴らしいRailsの新しい機能ですが、
おなじみのwith_scopeのように、
スコープつきのブロックを伴った利用ができないという問題がありました。
例えばこんな感じに利用しようとしてもうまくいきません。
ruby>>
User.active do
User.count # => Not run
end
User.active.with_scope do
User.count #=> Not scoped
end
<<ruby
そこで、昔ながらのwith_scopeと同じようにnamed_scopeを使えるようにする
Gemプラグインを作りました。
これを使うと、以下のように期待通りに動きます。
ruby>>
User.active.with do
User.count #=> User.active.count
end
<<--
なかなか便利だと思うので、Rails本家にパッチを送っておきました。
posted by
genki on Fri 1 Aug 2008 at 21:09 with 0 comments