在单个页面上停止片段缓存 - Spree

Stopping Fragment caching on a single page - Spree

我在我的应用程序中使用 Spree,它运行良好,除了一个让我思考的问题。在产品页面上,我已根据一天中的时间提供产品。但是有些产品从缓存中获取值,并根据选择的时间将不应该存在的产品放入其中。我怎样才能停止在这个狂欢页面上缓存(虽然我希望它在其他页面上工作)。我已经为该页面创建了一个操作并为其放置了一个前置过滤器,但它从所有页面中删除了缓存。非常欢迎任何关于同一方面的意见。

您最好的选择可能是替换视图并删除缓存块:

https://github.com/spree/spree/blob/v3.0.0/frontend/app/views/spree/products/show.html.erb#L3

还有其他解决方案可以在整个站点范围内禁用缓存,但据我所知,没有其他方法可以禁用不是可怕黑客的特定缓存。