Rails Enum 对 boolean 是不是特别的不友好?

LPFpengfei · 2018年08月06日 · 最后由 jasl 回复于 2018年08月06日 · 1770 次阅读
  • 我在数据库中有一个 active 的字段是 boolean 类型的,我在下面文件中
class a < ApplicationRecord
    enun active: {
        on: true,
        off: false
    }
end
  • 当我去更新时
a.first.on! 没有任何问题
  • 但是当我去 off! 时,这个字段就会变成 nil,并且我没有办法 i18n 这个参数的值

  • 就像下面的图片所展示的样子,我的 rails 版本为 5.2

我尝试去查看源码,却未能解决问题。

🙄️enum 的值是数字。怎么不用 boolean 类型。

Rei 回复

重构项目,数据库中原来这个字段用的就是 boolean 类型,没有使用迁移去改变这个字段的内容

LPFpengfei 回复

那就沿用 Boolean 啊。

Rei 回复

是有这样的打算,只是忽然遇到了这样的问题,所以才来问下,有什么方式可以解决,重构就是要不断瞎折腾吗

enum 也可以是 string

LPFpengfei 关闭了讨论。 01月29日 16:39
需要 登录 后方可回复, 如果你还没有账号请 注册新账号