Sha256: 47e29e9c9773deb012dd22d0a28181bc285e1c34e594153149c761bb3c3d539d

Contents?: true

Size: 1018 Bytes

Versions: 35

Compression:

Stored size: 1018 Bytes

Contents

require 'active_model/validations/presence'

module Paperclip
  module Validators
    class AttachmentPresenceValidator < ActiveModel::EachValidator
      def validate_each(record, attribute, value)
        if record.send("#{attribute}_file_name").blank?
          record.errors.add(attribute, :blank, options)
        end
      end

      def self.helper_method_name
        :validates_attachment_presence
      end
    end

    module HelperMethods
      # Places ActiveModel validations on the presence of a file.
      # Options:
      # * +if+: A lambda or name of an instance method. Validation will only
      #   be run if this lambda or method returns true.
      # * +unless+: Same as +if+ but validates if lambda or method returns false.
      def validates_attachment_presence(*attr_names)
        options = _merge_attributes(attr_names)
        validates_with AttachmentPresenceValidator, options.dup
        validate_before_processing AttachmentPresenceValidator, options.dup
      end
    end
  end
end

Version data entries

35 entries across 33 versions & 6 rubygems

Version Path
kt-paperclip-5.4.0 lib/paperclip/validators/attachment_presence_validator.rb
kt-paperclip-4.4.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-6.1.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-6.0.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.3.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.2.1 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.2.0 lib/paperclip/validators/attachment_presence_validator.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/paperclip-5.1.0/lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.1.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.0.0 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.7 lib/paperclip/validators/attachment_presence_validator.rb
paperclip_jk-5.0.0.beta2 lib/paperclip/validators/attachment_presence_validator.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/paperclip-4.3.6/lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.0.0.beta2 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-5.0.0.beta1 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.6 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.5 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.4 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.3 lib/paperclip/validators/attachment_presence_validator.rb
paperclip-4.3.2 lib/paperclip/validators/attachment_presence_validator.rb