enum 使ってみたかったので試していたら、指定が配列だったりするとどうもバリデーションがうまく通らず(数値でも文字列でも拒否られてしまった。なにか方法があるのだろうか)、いろいろこねくって下記の形かなと思った。
なんだか時間をやけに使ってしまったのでとりあえず記録しておく。多分暫くは自分はこのスタイルで書くと思う。
i18nとかいろいろあるけどそれは追々。
class ProjectUser < ActiveRecord::Base
enum role: {worker: 0, manager: 1}
enum status: {normal: 0}
validates :role,
inclusion: {in: ProjectUser.roles.keys}
validates :status,
inclusion: {in: ProjectUser.statuses.keys}
end