如何将枚举与复选框一起使用 rails

How to use enum with checkbox rails

我想创建一个问题列表,以确定该问题是否有多个正确答案,我使用复选框字段:

<div>
  <%= ff.label :multi_correct, t(".multi"), class: "field-label" %>
  <%= ff.check_box :multi_correct %>
</div>

这是我的问题模型

class Question < ApplicationRecord
...
  enum multi_correct: {no: 0, yes: 1}
end

当我提交表单时,它 returns 一个错误说 '0' is not a valid multi_correct

我的schema.rb:

  create_table "questions", options: "ENGINE=InnoDB DEFAULT CHARSET=utf8", force: :cascade do |t|
    t.string "content"
    t.integer "multi_correct"

如何让这个复选框生效?未选中时,它应该将 0 发送到数据库,反之亦然。

哦,nvm,这是解决方案

<%= ff.check_box :multi_correct, {}, "yes", "no" %>

第一个是勾选值,第二个是未勾选