私のアプリケーションはそれで構成されCategory
ていhas_many products
ます。カテゴリだけでなく、製品にも発行日があります。
カテゴリの表示ページには、そのカテゴリの製品が表示されます。
Category_controller の show および index アクションは非常に単純です (published はスコープです)。
def index
@categories = Category.published
end
def show
@categories = Category.find(params[:id])
unless @categories.datepublication <= Time.now
redirect_to categories_path
end
end
ご覧のとおり、公開されたカテゴリが表示され、自分自身のためにあまりにも興味がある場合は、カテゴリ インデックスにリダイレクトされます。
ここで、カテゴリーのショービューに公開された製品のみを表示するのは素晴らしいことです。ビュー内の if を除いてそれを行う方法はわかりませんが、要素をフィルタリングすることはビューの仕事ではないように思えます。ネストされた要素をフィルタリングする正しい MVC の方法は何ですか?