如何在rails simple_form中有一个折叠的下拉列表

时间:2012-01-09 21:12:55

标签: ruby-on-rails associations simple-form

在我的应用中,有两种型号:rfq和标准。他们的关系是多对多的。在rfq创建屏幕中,下面的代码在下拉列表中显示可供选择的列表:

<%= simple_form_for @rfq do |f| %>    
<%= f.association :standards, :collection => Standard.active_std.all(:order => 'name'), :label_method => :name, :value_method => :id %> 
<% end %>

问题是列表未折叠,这意味着多行框中显示多个标准。如何将盒子减少到一行?

感谢。

更新:这是多行列表框的屏幕截图: enter image description here

3 个答案:

答案 0 :(得分:1)

它正在创建一个多选项,因为一个rfq可以有许多标准,因此它允许您按住Ctrl键单击以选择许多标准。

您可以尝试添加:input_html => { :size =>'1' },但我不确定是否会保留滚动条。它肯定不会下降。

以下是其他想要做同样事情的人:HTML muliple select should look like HTML select。其中一个答案是指在jQuery中实现的Dropdown Check List,但这需要一些工作来与SimpleForm集成。

SimpleForm有一个非常有用的Google群组 - 您可能会在那里获得更多想法:

http://groups.google.com/group/plataformatec-simpleform

答案 1 :(得分:1)

您可以添加as: :collection_select

答案 2 :(得分:-1)

使用

=f.collecion_select, model_associated_ids, collection, value, label 
在你的

是这样的

=f.collection_select, :standard_ids, Standard.active_std.all, :id, :name

你可以在这里找到更多信息

https://github.com/plataformatec/simple_form