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

LPFpengfei · August 06, 2018 · Last by jasl replied at August 06, 2018 · 1846 hits
  • 我在数据库中有一个 active 的字段是 boolean 类型的,我在下面文件中
class a < ApplicationRecord
    enun active: {
        on: true,
        off: false
    }
end
  • 当我去更新时
a.first.on! 没有任何问题
  • 但是当我去 off! 时,这个字段就会变成 nil,并且我没有办法 i18n 这个参数的值

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

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

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

Reply to Rei

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

Reply to LPFpengfei

那就沿用 Boolean 啊。

Reply to Rei

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

enum 也可以是 string

LPFpengfei closed this topic. 29 Jan 16:39
You need to Sign in before reply, if you don't have an account, please Sign up first.