如何在collection_select类型字段上添加必需的true

问题描述 投票:0回答:2

我已经尝试在collection_select字段上添加required => true和:prompt =>“select ...”,但每次出现语法错误。如何解决下面这个错误。

.field
  = f.label "Receiver"
  = f.collection_select(:receiver_admin_id, 
        Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), 
        :id, 
        :agent_name, 
        :prompt => 'Select receiver', 
        {multiple: true}), 
      :required => true
  = f.collection_select(:receiver_admin_id, 
        Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), 
        :id, 
        :agent_name, 
        :prompt => 'Select receiver', 
        {multiple: true, required: true})

  = f.collection_select(:receiver_admin_id, 
        Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), 
        :id, 
        :agent_name, 
        :prompt => 'Select receiver',
        {}, 
        {multiple: true}), 
      :required => true
  = f.collection_select :receiver_admin_id, 
        Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), 
        :id, 
        :agent_name, 
        :prompt => 'Select receiver', 
        {multiple: true}, 
        :required => true
ruby-on-rails ruby haml
2个回答
0
投票

请试试这个:

  = f.collection_select :receiver_admin_id, Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), :id, :agent_name, {prompt: 'Select receiver'}, {multiple: true, required: true}

0
投票

几乎每次都很接近:)从文档in the rails guide你有:

collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {})

使用表单助手(f.)意味着对象(第一个参数)被处理,所以你留下:

method, collection, value_method, text_method, options, html_options

多个和必需都需要在html_options中:

= f.collection_select(:receiver_admin_id, Admin.agent_and_admin(current_admin.id, current_admin.parent_master_agent_id), :id, :agent_name, { :prompt => 'Select receiver' }, multiple: true, :required => true)

© www.soinside.com 2019 - 2024. All rights reserved.