class Paperclip::Validators::AttachmentDimensionsValidator
Public Class Methods
helper_method_name()
click to toggle source
# File lib/paperclip/validators/attachment_dimensions_validator.rb, line 8 def self.helper_method_name :validates_attachment_dimensions end
new(options)
click to toggle source
Calls superclass method
# File lib/paperclip/validators/attachment_dimensions_validator.rb, line 4 def initialize(options) super end
Public Instance Methods
validate_each(record, attribute, value)
click to toggle source
# File lib/paperclip/validators/attachment_dimensions_validator.rb, line 12 def validate_each(record, attribute, value) return unless value.queued_for_write[:original] begin dimensions = Paperclip::Geometry.from_file(value.queued_for_write[:original].path) [:height, :width].each do |dimension| if options[dimension] && dimensions.send(dimension) != options[dimension].to_f record.errors.add(attribute.to_sym, :dimension, dimension_type: dimension.to_s, dimension: options[dimension], actual_dimension: dimensions.send(dimension).to_i) end end rescue Paperclip::Errors::NotIdentifiedByImageMagickError Paperclip.log("cannot validate dimensions on #{attribute}") end end