我想改变我的施普雷3.0.x的店铺的“产品”概述仅显示有可以提供一个或多个变型产品。 这将是在正常范围的顶部(可提供,价格在目前的货币)。 这也将影响到分类结果列表。
我不想影响到搜索页面,虽然:在搜索时,无法使用的产品应该显示出来。
据我所看到的,有没有这样的范围,既不在Spree:Product
也不在Spree::Product scopes.rb
。
如果没有这样的范围内,会是什么的正确链joins
-和includes
写在这个范围内Product
?
我想改变我的施普雷3.0.x的店铺的“产品”概述仅显示有可以提供一个或多个变型产品。 这将是在正常范围的顶部(可提供,价格在目前的货币)。 这也将影响到分类结果列表。
我不想影响到搜索页面,虽然:在搜索时,无法使用的产品应该显示出来。
据我所看到的,有没有这样的范围,既不在Spree:Product
也不在Spree::Product scopes.rb
。
如果没有这样的范围内,会是什么的正确链joins
-和includes
写在这个范围内Product
?
我可能会喜欢的东西开始:
Spree::Product.joins(
variants_including_master: :stock_items
).group('spree_products.id').having("SUM(count_on_hand) > 0")
这应该给你接近你在找什么。
你可以使用这个扩展:
https://github.com/swrobel/spree_zero_stock_products/
默认情况下,它只是增加了一个范围,以Spree::Product
在不改变默认的搜索范围。 您可以使用所提供的:on_hand
在方便的范围。