使用場景與個人理解:用作 model 中類似 status 這種字段的翻譯。數(shù)據(jù)庫中通常會把這樣的字段存成 Integer 類型,比如 0 (激活),1 (存檔)。我們在代碼中引用的話用英文代表相應(yīng)的 Integer 值,可增加代碼可讀性,否則直接寫在 sql 中或者直接寫 0 或者 1 很難知道它們到底代表什么。所以,枚舉類型其實是 { active: 0, archived: 1 } 。那么又如何把 active 翻譯成中文呢?所以就得用 i18n 這種去翻譯成中文了。
參考:
關(guān)于在 Rails Model 中使用 Enum (枚舉) 的若干總結(jié)
相關(guān)gem:
enumerate_it