Ruby on rails 使用“活动存储”RubyonRails验证正确的映像类型

Ruby on rails 使用“活动存储”RubyonRails验证正确的映像类型,ruby-on-rails,Ruby On Rails,我需要对这一点有一双新的眼睛,我正在尝试验证正确的图像类型,我已经在models book.rb中添加了以下代码 私有的 def正确的图像类型 如果图像已附加?&&image.content\u type.in?%wimage/jpeg image/png image/jpg 错误。添加:图像,必须是JPG、JPEG或PNG 埃尔西夫 image.attached?==错误的 错误。添加:图像,必须上载 终止 结束您缺少一个!。此外,请确保在验证失败时清除无效附件。这确保了无效附件不会被保存。

我需要对这一点有一双新的眼睛,我正在尝试验证正确的图像类型,我已经在models book.rb中添加了以下代码

私有的 def正确的图像类型 如果图像已附加?&&image.content\u type.in?%wimage/jpeg image/png image/jpg 错误。添加:图像,必须是JPG、JPEG或PNG 埃尔西夫 image.attached?==错误的 错误。添加:图像,必须上载 终止 结束您缺少一个!。此外,请确保在验证失败时清除无效附件。这确保了无效附件不会被保存。下面是一个快速重构

private

def correct_image_type
  valid_formats = %w(image/jpeg image/png image/jpg)

  if image.attached? && !image.content_type.in?(valid_formats)
     image.purge
     errors.add(:image, "Must be a JPG, JPEG or PNG")
  else
     errors.add(:image, "must be uploaded")
  end
end