Rails | バリデーション validates と validate の違い
2564 ワード
モデル(model)にバリデーションを書く際に使い分けすることがあったのでメモ。
それぞれの違いについて
validates
標準のバリデーションを書くときはこれ
使い方はRailsガイドを参照
https://railsguides.jp/active_record_validations.html
validate
自分でオリジナルのバリデーション用メソッドを書くときはこれ
validateの使用例
model
validate :photo_size, :photo_length
private
def photo_size
photos.each do |photo|
if photo.blob.byte_size > 5.megabytes
photo.purge
errors.add(:photos, "は1つのファイル5MB以内にしてください")
end
end
end
def photo_length
if photos.length > 10
photos.purge
errors.add(:photos, "は10枚以内にしてください")
end
end
私はActiveStorageでバリデーションを作成した際に違いに気づき、疑問に思ったので残しておきます。
Author And Source
この問題について(Rails | バリデーション validates と validate の違い), 我々は、より多くの情報をここで見つけました https://qiita.com/YUUKI-Git611/items/85c028f7ac098e9576fd著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .