datetimeのバリデーション設定

Last-modified: Tue, 23 Sep 2014 15:12:51 JST (1126d)

datetimeのバリデーションをする。

  1. Gemfileに以下追記
    gem 'validates_timeliness', '~> 3.0'
  2. インストール
    bundle install
    rails generate validates_timeliness:install
  3. /config/locales/model.ja.ymlに以下追記
    ja:
     errors:
       messages:
         invalid_date: "日付が不正です"
         invalid_time: "時刻が不正です"
         invalid_datetime: "日付・時刻が不正です。"
         is_at: "must be at %{restriction}"
         before: "must be before %{restriction}"
         on_or_before: "未来日付は指定できません。 %{restriction}以前を指定してください。"
         after: "must be after %{restriction}"
         on_or_after: "過去日付は指定できません。 %{restriction}以降を指定してください。"
  4. バリデーションの使い方はこんな感じでmodelに設定
    class Monitor < ActiveRecord::Base
      validates :start_datetime,:presence => true
      validates_datetime :start_datetime, :on_or_after => lambda { Time.now }
    end
    参考(GitHUb)

Counter: 576, today: 1, yesterday: 0

このページの参照回数は、576です。