我正在使用带有Rails 4的SimpleForm 3.2.1。我正在尝试将rails表单转换为simple_form。下面是使用常规rails表单的单选按钮的代码:
<ul class="list-radios list-multiplier">
<% @organization_plans.each_with_index do |plan, index| %>
<li>
<div class="radio custom-radio">
<%= f.radio_button :plan_id, plan.id, id: "field-rad#{index}", data: {price: plan.total_price} %>
<label class="form-label" for='field-rad<%= index %>'>
<span></span>
<%= plan.description %>
</label>
</div><!-- /.radio -->
</li>
<% end %>
</ul><!-- /.list-radios -->我尝试使用以下代码将其转换为SimpleForm:
<ul class="list-radios list-multiplier">
<% @organization_plans.each_with_index do |plan, index| %>
<li>
<div class="radio custom-radio">
<%= f.input :plan_id, value: plan.id, input_html: {id: "field-rad#{index}"}, data: {price: plan.total_price}, label: false, as: :radio %>
<label class="form-label" for='field-rad<%= index %>'>
<span></span>
<%= plan.description %>
</label>
</div><!-- /.radio -->
</li>
<% end %>
</ul><!-- /.list-radios -->然而,当我在浏览器中打开页面时,我得到了错误:
No input found for radio如何让此表单开始使用simple_form?
发布于 2016-03-17 10:27:32
根据SimpleForm source code的说法,它没有默认的radio输入。
这个gem的文档建议了几种使用单选按钮的方法:
<%= f.input :plan, as: :radio_buttons %><%= f.input :plan, as: :boolean %> (带一些额外的值句柄)radio并将其放入文件夹app/inputs中。Read more about custom inputs发布于 2017-07-06 10:50:06
使用常规的rails助手并没有什么问题。如果您想要一致的包装器,您可以将它们嵌套在输入中。它可能看起来像这样
= f.input :plan_id, label: false do
ul
- @organization_plans.each do |plan|
li
= f.radio_button :plan_id, plan.id
= f.label :plan_id, plan.description, value: plan.id当然,如果不需要太多的自定义,也可以使用集合
= f.input :plan_id, collection: @organization_plans.pluck(:id, :description), as: :radio_buttons, label: falsehttps://stackoverflow.com/questions/36046958
复制相似问题