我会疯狂地处理Rails中的复选框。
我无法正常运行,因为数据无法正确保存,所以 check_box_tag 是正确的。
例如,当我取消选中一个框时,它应该在数据库中保存null / empty / nil。
<%= form_for(@user, local: true, html: {multipart: true}) do |form| %>
<div class="input-field col s12 m12">
<%= form.label :has_previously_used_hermes_cover, t('has_previously_used_hermes_cover') %>
<p>
<label>
<%= check_box_tag "user[credit_report_available]", 1, @user.credit_report_available == 1 ? true : nil, id: "user_credit_report_available" %>
<span class="btn <%= 'active' if (@user.credit_report_available) %>"> Yes </span>
</label>
<label>
<%= check_box_tag "user[credit_report_available]", 0, @user.credit_report_available == 0 ? false : nil, id: "user_credit_report_available" %>
<span class="btn <%= 'active' if (@user.credit_report_available == 0) %>"> No </span>
</label>
</p>
</div>
<div class="col s12 m4">
<%= form.submit class: 'btn', value: 'Send Application' %>
</div>
<% end %>
def user_params
params
.require(:user)
.permit(:credit_report_available)
end
Parameters: {"utf8"=>"✓", "authenticity_token"=>"EN4Zjg4VJsdE3r6hYmvGiNV6yeLVy0ehKASDO1T3eb+er8TfdG+I0jRCQ/XuGGs8YEJLaUcfRkIV8pwR+N4JpNFg==", "user"=>{"credit_report_available"=>""}, "commit"=>"Send Application", "locale"=>"en"}
答案 0 :(得分:0)
你不想念冒号吗?
.permit(:credit_report_available)