Ruby on rails 强制用户在前进之前在表单中至少选择一个元素(rails)

Ruby on rails 强制用户在前进之前在表单中至少选择一个元素(rails),ruby-on-rails,Ruby On Rails,因此,我有一个情况,我有这个表单,并试图迫使用户选择至少一个元素在这个表单中,他们可以前进。我正在开发一个rails应用程序,但我并没有开发它,所以有可能我没有看到足够的信息。(注意,出于可读性的目的,我将其分解,实际上是4行代码) 现在我假设“:required=>true”将是这个问题的解决方案,但是这不起作用 因此,进一步研究代码,我注意到控制器中没有定义任何带有clinic_id的作用域 所以我想我的问题是,有没有一个简单的解决办法?或者我需要在控制器中创建一些东西来实现这一点。如果我需

因此,我有一个情况,我有这个表单,并试图迫使用户选择至少一个元素在这个表单中,他们可以前进。我正在开发一个rails应用程序,但我并没有开发它,所以有可能我没有看到足够的信息。(注意,出于可读性的目的,我将其分解,实际上是4行代码)

现在我假设“:required=>true”将是这个问题的解决方案,但是这不起作用

因此,进一步研究代码,我注意到控制器中没有定义任何带有clinic_id的作用域


所以我想我的问题是,有没有一个简单的解决办法?或者我需要在控制器中创建一些东西来实现这一点。如果我需要在控制器中创建一些东西,我需要做什么?

在所有浏览器中,
required
属性似乎都不好用。使用jQuery,您可以禁用提交,直到选择了一个选项为止。
required
属性似乎在所有浏览器中都不起作用。使用jQuery,您可以禁用提交,直到选择了一个选项。。。
control-group
  = f.label :clinic_ids, "Clinics", class: 'control-label'
  .controls
    = f.select :clinic_ids, Clinic.accessible_by(current_ability, :manage).collect
 { |c| [c.name, c.id] }, {}, :class => 'chzn-select',
 :'data-placeholder' => 'You must select a clinic before advancing', 
 :multiple => true, :required => true