塩焼きブログ

塩焼きに関しての研究内容を公開しています

Railsで入力時のみバリデーションを実行する

Railsで空白を許可するが、入力するなら文字制限やフォーマットのチェックを行いたい場合はallow_blank: trueで空白を許可する。例では:nameは必須だが、:bodyは未入力でも通過する。しかし:bodyを入力するときは8文字以上でなければいけない。

class Profile < ActiveRecord::Base

  validates :name, presence: true, length: {minimum: 8}
  validates :body, allow_blank: true, length: {minimum: 8}

end