Search code examples
ruby-on-railsruby-on-rails-3ruby-on-rails-3.2paperclippaperclip-validation

Validate multiple content-types with Paperclip and Rails


I'm using the Paperclip gem for Rails in order to allow users to upload a photo of themselves. I obviously only want to accept jpeg, gif or png images. What is the proper way to validate these files were uploaded instead of something else like a word document?

According to the Paperclip docs, I validate content-type with:

validates_attachment :document, content_type: "application/pdf"

What is the proper way to validate the above different image formats (gif, png, jpeg)?


Solution

  • class Doc
      has_attached_file :document
      validates_attachment_content_type :document, 
                                        :content_type => /^document\/(png|gif|jpeg)/,
                                        :message => 'only (png/gif/jpeg) images'
    end