Rails - 简单形式 - 布尔属性不接受假/没有单选按钮选择

时间:2016-08-08 08:28:32

标签: ruby-on-rails forms simple-form

我正在使用简单的形式(使用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", 

1 个答案:

答案 0 :(得分:0)

您可能只是忘了将ethics字段添加到控制器中允许的属性列表中。

params.require(:project).permit(..., :ethics)

您还应该在模型中没有presence验证。因为false为false并且将在验证时返回false。

使用

validates :ethics, inclusion: { in: [ true, false ] }