我正在使用简单的形式(使用bootstrap)制作一个rails应用程序。
我的形式有这个问题:
<%= f.input :ethics, as: :radio_buttons, label: 'Is an ethics review relevant?' %>
ethics属性是我表格中的布尔值。
表单使用单选按钮呈现是/否。
默认显示为否 - 但如果这是我想要给出的答案,我会因为无法提交表单而被卡住。我收到一个错误,说明需要回答。
为什么简单的形式不承认错误作为布尔答案?
日志显示:
Processing by ProjectsController#create as HTML
Parameters: {"utf8"=>"✓", "authenticity_token"=>"", "project"=>{"title"=>"asdfsdf ", "byline"=>"", "description"=>"asdfsdf ", "problem"=>"", "solution"=>"", "remark"=>"", "ethics"=>"false",
答案 0 :(得分:0)
您可能只是忘了将ethics
字段添加到控制器中允许的属性列表中。
params.require(:project).permit(..., :ethics)
您还应该在模型中没有presence
验证。因为false
为false并且将在验证时返回false。
使用
validates :ethics, inclusion: { in: [ true, false ] }