rails form select multiple给出第一个空值

时间:2015-09-16 00:11:04

标签: ruby-on-rails forms

我在膳食和食谱之间定义了has_and_belongs_to_many关联。在Meals创建表单中,我使用select来填充食谱。

<%= f.select :recipes, Recipe.all.collect { |x| [x.name, x.id]}, {}, :multiple => true %>

但结果集的第一个值为零。

"recipes"=>["", "2", "7"]

如何消除空/零值?

2 个答案:

答案 0 :(得分:9)

对我来说,设置:include_hidden => false是有效的

<%= f.select :recipes, Recipe.all.collect { |x| [x.name, x.id]}, {:include_hidden => false}, :multiple => true %>

答案 1 :(得分:1)

您可以传递:include_blank => false

来拒绝空白选项
<%= f.select :recipes, Recipe.all.collect { |x| [x.name, x.id]}, {:include_blank => false}, :multiple => true %>

您可以设置如下提示

<%= f.select :recipes, Recipe.all.collect { |x| [x.name, x.id]}, {:include_blank => "Please Select"}, :multiple => true %>