我正在尝试在编辑和新视图之间重复使用表单中的代码。在新视图中,我希望默认情况下选中复选框。在编辑视图中,我希望它反映对象的当前状态。分享此信息的最佳方式是什么?下面的代码是我想要的" new"但是对于编辑,我不希望硬编码为" 选中:true" 。
<div class="row">
<%= form_for @producer_type do |f| %>
<%= f.label :name %>
<%= f.text_field :name, class: 'form-control' %>
<%= f.label :enabled %>
<%= f.check_box :enabled, {checked: true} %>
<% end %>
</div>
答案 0 :(得分:1)
将true
替换为current_page?(action: 'edit')
有关current_page方法的更多信息,请参阅ActionView::Helpers::UrlHelper#current_page?。
我认为你不需要花括号,因为哈希位于参数列表的末尾。
答案 1 :(得分:1)
您需要将对象从控制器传递到表单。
int
并在表单中使用它,如果启用为真,Rails会自动检查
int