【问题标题】:Rails 3 - select_tag helper - Blank option tagRails 3 - select_tag helper - 空白选项标签
【发布时间】:2011-07-06 04:25:27
【问题描述】:

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

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

到目前为止我的助手:

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

【问题讨论】:

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


    【解决方案1】:

    Ruby on Rails 4.0.4 ActionView::Helpers::FormOptionsHelper

    :prompt - 设置为 true 或提示字符串。 When the select element

    还没有值,这会在选项前面加上泛型

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

    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>
    

    【讨论】:

      【解决方案2】:

      我认为正确的方法是

      :prompt=>“你的文字”

      【讨论】:

        【解决方案3】:

        您可以使用:include_blank =&gt; true 的选项here

        【讨论】:

          【解决方案4】:

          因此,我能够使用 options_for_select 将一个项目插入到我的数组中,而不是使用 options_from_collections_for_select 方法。与我上面的代码相比,我在下面的 sn-p 中插入了“everyone”。

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

          【讨论】:

            猜你喜欢
            • 2011-07-04
            • 1970-01-01
            • 2012-08-16
            • 2015-09-26
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多