2016-04-11 7 views

答えて

1

クエリ間で結果が変更される可能性があるため、クラス変数またはグローバル変数を定義する必要はありません。 私は別の方法に複製し、いくつかのメモ化やエキスを追加するとします。モデルにscopeを定義するために

def home 
    categories 
end 

def contacts 
    categories 
end 

def categories 
    @categories ||= Category.where(:parent_id => '').order("id").each 
end 

、より良い:

あり
def categories 
    @categories ||= Category.categories_without_parent 
end 
+0

:コントローラメソッドcategories

class Category < ActiveRecord::Base scope :categories_without_parent, -> { where(:parent_id => '') } end 

は次のようになりますクエリ間で結果が変わる可能性があるため、クラス間またはグローバル変数を定義する必要はありません。なぜカテゴリは一度追加され、何年も同じままになりますか? – user2950593

関連する問題