邁向 Rails 高級新手

scope

scope的作用就是將時常使用或是複雜的ORM語法組合成懶人包,這樣下次要用的時候只要把懶人包拿出來就可以了,舉例說明:

model/topic.rb

class Topic < ActiveRecord::Base
    scope :recent, order("created_at DESC")
end

上面這段code我們定義了recent這個scope,以後我們只要下recent這個指令就等於下order("created_at DESC")是一樣的。如此一來就可以讓程式碼更為簡潔。