08/11/13 00:50:35
Aptana。1日1回は落ちるけど。
URLリンク(wota.jp)
URLリンク(d.hatena.ne.jp)
この辺にscoped_methodsの話があるけど、
ちょっとコードが複雑で追い切れてない。
with_scopeみたいにブロックの範囲内じゃなく、
任意のタイミングでscopeの開始、終了したいときは、
こんな感じでinstance_evalでscopet_methodsに
scopeをpush,popするだけでいいのかな。
def my_scope
{
:find => {:conditions => ["name <> ?", "name1"] }
}
end
Page.instance_eval do
self.scoped_methods << my_scope
end
pages = Page.find(:all)
Page.instance_eval do
self.scoped_methods.pop
end