0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Rails validates

Posted at

バリデーション

Railsではvalid?メソッドを実行するとバリデーションが実行されます!
バリデーションが通ればtrueを返し、引っかかればfalseを返します。
invalid?メソッドは逆の振る舞いをします。

空でないこと

validates :title , persence: true

booleanの場合

validates :island, inclusion: { in: [true , false ] }

unique

validates :user_name , uniqueness: true

含むかどうかを検証する場合

validates :fruit, inclusion : {in: %w(banana apple orange)} 

含まないことを検証する場合

validates :country, exclusion: {in: %w(china japan)}

長さ

validates :password, length: {minimum: 1} # 1文字以上
validates :password , length: {maximum: 8} # 8文字以下
validates :password , length: {in: 1..12} #1文字以下
validates :password , length: {is: 8} #8文字のみ

numericality

validates :age, numericality: true # 数字のみ
validates :age, numericality: {only_integer: true} #integer
validates :age, numericality: {greater_than: 20} #指定された値(あたい)よりも大きいか
validates :age, numericality: {less_than: 10} #指定された値よりも小さいか
validates :age, numericality: {equal_to: 10} # 指定された値と等しい(ひとしい)か
validates :age, numericality: {greater_than_or_equal_to: 10} #定された値と等しい、あるいは大きいか
validates :age, numericality: {less_than_or_equeal_to: 10 } #指定された値と等しい、あるいは小さいか
validates :age, numericality: {odd: true} #trueに設定した場合 奇数か
validates :age , numericality: {even: true} #even trueに設定した場合 偶数か

reg

VALID = /\A[a-zA-Z]+\z/
validates :name, format: {with: VALID}
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?