neco1001 / kanji

漢字学習サービス学べるくん(仮)
0 stars 0 forks source link

KanjiReadingのtypeのバリデーションでキー以外の値を設定するとArgumentErrorになる #2

Open neco1001 opened 2 years ago

neco1001 commented 2 years ago

以下でバリデーションを設定しているが、値にキー以外の値('onyomi' or 'kunyomi')以外を設定するとArgumentErrorが発生する。

validates :type, inclusion: { in: KanjiReading.types.keys }

エラー内容

KanjiReading.new(kanji_character_id: 1, reading: 'テスト', type: 'test')
/Users/kenichikaneko/Project/kanji/vendor/bundle/ruby/3.1.0/gems/activerecord-7.0.3/lib/active_record/enum.rb:157:in `assert_valid_value': 'test' is not a valid type (ArgumentError)

このままでも問題はないが少し気持ち悪いので、inclusionのバリデーションでエラーとなるようにしたい。