1

以下のような包含バリデーターを書きたいと思います。

validates :application_date,
  inclusion_of: { in: Date.today..20.years.from_now }

# Schema
#  application_date       :date

しかし、私は得る

bad value for range
4

1 に答える 1

3

このエラーが発生する理由20.years.from_nowは、日時オブジェクト(ActiveSupport :: TimeWithZone)をDate.today返し、日付を返すためです。そのため、2つの異なるオブジェクトタイプを使用しているため、範囲は機能しません。後者を日付に変換することで修正できる場合があります。

Date.today..20.years.from_now.to_date
于 2013-02-04T13:41:00.187 に答える