Rails表单中的复选框 - 设置值

时间:2013-08-28 01:11:04

标签: ruby-on-rails forms search params

我想采用具有购买选项的表单,用户可以过滤广告资源以查找他们要查找的内容,例如:

颜色: _蓝色 _绿色 _Red

尺寸: _大 _介质 _Small

将这些选项设为复选框,以便他们可以查看库存中的内容。

我的想法是拥有一个使用“更新库存”提交按钮提交的表单(如果有人知道如何让它自动更新而不是让用户单击一个令人惊讶的按钮)。

提交的表单将执行数据库搜索并返回符合参数的对象:

def find_items
    @products = Product.where(:color => params[:color], :size => params[:size])
    redirect_to '/products/search'
end

然而,根据我的理解,如果选中一个复选框,它将返回1.有没有办法改变这种行为,可能让它提交类似“蓝色”或“中等”的东西,如果没有检查怎么办? /检查多件物品?这会起作用吗?

1 个答案:

答案 0 :(得分:0)

查看代码,您需要为颜色提交一个值,为大小提交一个值。使用单选按钮,复选框用于一次发布多个值。

你尝试这样做: -

Blue <%=radio_button_tag 'color', 'blue' %>
Green <%=radio_button_tag 'color', 'green' %>
red <%=radio_button_tag 'color', 'red' %>

如果未选择单选按钮,则将空值发布到控制器。所以,你必须相应地处理它。