module ActiveStorage::Imgur::ModelExtension

Public Instance Methods

has_many_attached(*arg) click to toggle source
Calls superclass method
# File lib/active_storage/imgur/model_extension.rb, line 12
def has_many_attached(*arg)
  super(*arg)
  name = arg.first
  validate_image(name)
end
has_one_attached(*arg) click to toggle source
Calls superclass method
# File lib/active_storage/imgur/model_extension.rb, line 6
def has_one_attached(*arg)
  super(*arg)
  name = arg.first
  validate_image(name)
end
validate_image(name) click to toggle source
# File lib/active_storage/imgur/model_extension.rb, line 19
      def validate_image(name)
        validate "validate_imgur_#{name}".to_sym

        generated_association_methods.class_eval <<-CODE
          attr_accessor :invalid_#{name}

          def validate_imgur_#{name}
            if invalid_#{name}
              errors.add(:#{name}, "is not an image")
            end
          end
        CODE
      end