Ruby on rails Rails Haml,复选框选择的表格显示

Ruby on rails Rails Haml,复选框选择的表格显示,ruby-on-rails,checkbox,haml,Ruby On Rails,Checkbox,Haml,我有一个表格,显示上面复选框中所选项目的数据,如a[],b[],c[]。最初,当第一次加载页面时,表显示为空。选中复选框后,表格将显示所选内容的数据。然后,当我取消选中所有复选框并按display时,表格显示应为空 因此,在控制器中,复选框选择的变量> @选定的品牌=参数[:品牌]|会话[:品牌]|{} 如您所知,params[]和session[]是视图中表单提交的值。{}->未选中任何复选框时。 同样在控制器中,我有这个 @产品=产品。按品牌查找所有产品(@selected\u brands

我有一个表格,显示上面复选框中所选项目的数据,如a[],b[],c[]。最初,当第一次加载页面时,表显示为空。选中复选框后,表格将显示所选内容的数据。然后,当我取消选中所有复选框并按display时,表格显示应为空

因此,在控制器中,复选框选择的变量>

@选定的品牌=参数[:品牌]|会话[:品牌]|{}

如您所知,params[]和session[]是视图中表单提交的值。{}->未选中任何复选框时。 同样在控制器中,我有这个 @产品=产品。按品牌查找所有产品(@selected\u brands.key)


我遇到的问题是,当我取消选中这些框时,在我之前所做的选择之后,该表将显示来自上一个会话的数据,而不是一个空表。我没有做什么?

您遇到了一个困扰很多人的HTML问题:当您取消选中所有复选框时,不会向服务器发送任何内容,因此不会记录任何更改,因此最后的情况仍然会被记录

对此有很多解决方案(事件、javascript、服务器端代码),因此我的建议是将搜索范围扩大到通用html如何最好地处理这种情况


如果您不喜欢Javascript,并且对过多的db操作没有问题,请删除产品的所有选定品牌,并在获得此结果后重新应用选定品牌。

感谢您的建议。