Rails 3 - select_tag helper - 空白选项标签

时间:2011-03-01 00:58:36

标签: ruby-on-rails-3 forms helpers

我有一个@users数组填充的select_tag,我正用它来执行搜索。当用户第一次登陆页面时,我希望它显示空白或自定义标签,而不是数组中的第一项?

这是使用select_tag助手的选项吗?要插入空白的“”选项吗?

到目前为止我的助手:

<%= select_tag :search_user, options_from_collection_for_select(@users, "id", "name"), :class => 'submittable'%> 

4 个答案:

答案 0 :(得分:17)

您可以使用here中记录的选项:include_blank => true

答案 1 :(得分:3)

我认为正确的方法是

:prompt =&gt;“您的文字”

答案 2 :(得分:0)

因此,我没有使用options_from_collections_for_select方法,而是使用options_for_select将项目插入到我的数组中。与上面的代码相比,我在下面的代码段中插入了“everyone”。

<%= select_tag :search_user, options_for_select(@users.collect{ |user| [user.name, user.id] }.insert(0,"Everyone")), :class => 'submittable'%>

答案 3 :(得分:0)

Ruby on Rails 4.0.4 ActionView::Helpers::FormOptionsHelper

  

:prompt - 设置为true或提示字符串。当选择元素

时      

还没有值,这是一个带有通用

的选项      

提示 - “请选择” - 或给定的提示字符串。

select(“post”, “person_id”, Person.all.collect {|p| [ p.name, p.id ] }, {prompt: 'Select Person'})

可能会成为:

<select name="post[person_id]">
  <option value="">Select Person</option>
  <option value="1">David</option>
  <option value="2">Sam</option>
  <option value="3">Tobias</option>
</select>