追記)この記事古いので、Rail4.1以上を使う場合は、ActiveRecord::Enum使ったほうがいいと思います。 https://github.com/brainspec/enumerize 結論からいうと、これはいいです。 例えば職業や性別なんかのDBで管理するほどのもんじゃないものはコレで扱うといい。 Gemfile gem "enumerize", "~> 0.7.0" models/user.rb class User < ActiveRecord::Base extend Enumerize enumerize :sex, in: %w(male female) とりあえず、おおっ、と思ったのはこれだけでsexに対するinclusionのバリデーションがかかるのだ。 で、i18nと組み合わせるとvalueとのマッピングが柔軟になる。 locales/models/user