将显示的产品限制为未在Spree中删除的产品

时间:2012-04-02 09:41:21

标签: spree

我正在使用Spree 0.70。

在我的主页视图中,我有以下内容来显示“精选”类别:

<% @taxon = Taxon.find_by_permalink('featured', :include => :products) %>
<%= render :partial => 'shared/products', :locals => {:products => @taxon.products } %>

但是,它显示的是已删除的产品。我怎么能阻止这个?

我认为@variant.deleted_at = nil可能是我需要使用的,但我不确定如何将其构建到视图中。

2 个答案:

答案 0 :(得分:2)

您应该使用此查询

@taxon.products.active

这不仅显示已删除的产品,而且还会显示今天之后设置available_on日期的产品。

答案 1 :(得分:1)

哦,亲爱的 - 答案非常简单。

<%= render :partial => 'shared/products', :locals => {:products => @taxon.products.where(:deleted_at => nil) } %>

(仍然是使用Ruby和Rails编程的菜鸟。)