用户当前可以通过设置复选框将过滤器应用于数据库查询,例如
Colour
[] Red
[] Green
[] Blue
Shape
[] Round
[] Square
Size
[] Small
[] Medium
[] Large
单击复选框会触发 AJAX 请求,该请求将where
条件附加到查询中,例如
@mymodel = MyModel.scoped
@mymodel = @mymodel.where(:colour => params[:colour]) if params[:colour]
...
我现在想做的是在每个复选框之后添加一个计数,以指示如果选中给定的复选框将显示多少个结果。例如
Colour
[] Red (148)
[] Green (121)
[] Blue (136)
...
单击复选框后,应刷新所有复选框旁边的计数,并且不会显示与零结果有关的选项。这需要适用于所有过滤器类别,因此,例如,如果数据库中没有任何小的和红色的东西,则选择“红色”时“小”选项应该消失,并在取消选择时重新出现。
实现这种预测过滤的最佳方法是什么?
非常感谢。
更新
更具体地说,我的问题是:在 Rails 中实现分面导航的最佳方法是什么?
(感谢@Pasta 确定这个术语)