Ruby on rails Rails+Ransack-下拉列表集合?

Ruby on rails Rails+Ransack-下拉列表集合?,ruby-on-rails,ransack,Ruby On Rails,Ransack,我很喜欢ransack gem的灵活性,但是我无法让标准的集合正常运行。也许有人可以帮忙 例如: <%= collection_select(:expense, :project_id, Project.all, :id, :name, { prompt: 'Select Project'}, { class: 'span4' }) %> 在这种情况下,此代码来自费用输入屏幕,因此第一个参数是费用对象。它应该是什么形式的搜查?另外,我知道我需要把后缀放

我很喜欢ransack gem的灵活性,但是我无法让标准的集合正常运行。也许有人可以帮忙

例如:

      <%= collection_select(:expense, :project_id, Project.all, 
        :id, :name, { prompt: 'Select Project'}, { class: 'span4' }) %>
在这种情况下,此代码来自费用输入屏幕,因此第一个参数是费用对象。它应该是什么形式的搜查?另外,我知道我需要把后缀放进去。在本例中,我希望project_id_eq成为搜索模式

另外,我的表单位于名为“报告”的控制器和视图上,我不会将此搜索置于默认控制器中


谢谢

这似乎会奏效

<%= f.select :project_id_eq, options_from_collection_for_select(Project.all, "id", "name", @search.project_id_eq) %>

如果有人有其他建议,我也很想知道。

要使用include_空格来完成此操作,请将其放在括号外:

例:

==更新==

更好的方法是使用f.collection\u select。这样,在用户使用下拉菜单搜索某个内容后,将在以下页面上预选该选项:

<%= form.collection_select :vendor_id_eq, Vendor.all, :id, :name, include_blank: true %>

除了不允许您设置提示Select外,该选项工作得相当好。@dspencer只需将include_blank:true放在括号外:当我们使用Select方法的选项时,您能告诉我们如何添加eq吗?我们正在从帮助程序调用该选项