0
我有4个使用相同范围的复选框。它用于过滤有一定数量卧室的房子。最后一个复选框代表“4多”卧室使用filterrific过滤多个复选框
<%= f.check_box(:with_bedroom_num_check, {multiple: true}, '1', nil) %>
<%= f.check_box(:with_bedroom_num_check, {multiple: true}, '2', nil) %>
<%= f.check_box(:with_bedroom_num_check, {multiple: true}, '3', nil) %>
<%= f.check_box(:with_bedroom_num_check, {multiple: true}, 'more', nil) %>
当我检查/取消选中这些复选框,参数数组传递到范围变更。
例如
X O O O
当选中第一盒,所述阵列是[1]。它应该显示有一间卧室的房子。
x x x x
该数组为[1,2,3]。它应该显示所有房屋。
x x o o
该数组是[1,2]。它应该显示有1或2间卧室的房子。
x o o x
该数组为[1,更多]。它应该显示有1,4个或更多卧室的房屋。
目前,我的范围是:
scope :with_bedroom_num_check, lambda { |flag|
where(bedroom:[flag])
}
,只用1-3个卧室的作品。当最后一个复选框被选中时,我怎么能显示所有拥有4个或更多卧室的房屋?
我改变了“with_bedroom_num_check”与“卧室”,它工作得很好!谢谢! –