根据一组collection_check_boxes中标记的选项过滤表

时间:2014-01-24 11:00:51

标签: ruby-on-rails ruby-on-rails-4

我有3张桌子。产品之一,客户之一和销售之一。 Sale表以多对一的方式与其他两个相关联(一个客户可以有很多销售,一个产品可以多次销售)。

我有一个控制器,其中显示Sale表的内容,我想包括两组复选框,一组用于客户端,另一组用于产品。这个想法是用户检查他们想要包含在表格中的方框(可以是一个,全部或全部)。

例如,如果我想了解客户端1的所有销售情况,我会在客户端1上标记复选框。如果我想要产品3的产品列表,我会标记产品3.如果我想要对客户1和产品3的所有销售,我都标记。等等。我认为这方面的想法很明确。

我目前正在尝试使用form_tag,其中包含两个collection_check_boxes。我已设法显示它们,但我不知道如何将数据发送回视图以过滤内容。

这就是我在视图(haml)上的代码:

=form_tag do
  %table{:id => 'options_table', :class => 'tablex'}
      %th='Products'
      %th='Clients'
    %tr
      %td= collection_check_boxes(:product,'',@products,'id','name')
      %td= collection_check_boxes(:client,'',@clients,'id','name')

@products和@clients之前在控制器中填充了“.all”。

我想请注意,我还没有为表单指定控制器“动作”,因为我无法创建正确的路径。理想情况下,我想将它发送回索引,然后@sales对象将根据之前标记的数组进行过滤。

非常感谢任何指针。我是铁杆新手,仍在努力寻找自己的方式,所以我很抱歉这太明显了。

谢谢。

0 个答案:

没有答案