ユーザー登録の際に、アバター画像添付を必須としたい場合のvalidationを学んだ備忘録
user.rb
has_one_attached :image
validate :image_presence
def image_presence
if image.attached?
if !image.content_type.in?(%('image/jpeg image/png'))
errors.add(:image, 'にはjpegまたはpngファイルを添付してください')
end
else
errors.add(:image, 'ファイルを添付してください')
end
end
画像が添付されていたら、それがjpegまたはpngファイルであるか確認、
画像が添付されていなかったらファイル添付を促すように実装しています。