Module: Paperclip::Validators::HelperMethods
- Defined in:
- lib/paperclip/validators/attachment_size_validator.rb,
lib/paperclip/validators/attachment_presence_validator.rb,
lib/paperclip/validators/attachment_content_type_validator.rb
Instance Method Summary (collapse)
-
- (Object) validates_attachment_content_type(*attr_names)
Places ActiveRecord-style validations on the content type of the file assigned.
-
- (Object) validates_attachment_presence(*attr_names)
Places ActiveRecord-style validations on the presence of a file.
-
- (Object) validates_attachment_size(*attr_names)
Places ActiveRecord-style validations on the size of the file assigned.
Instance Method Details
- (Object) validates_attachment_content_type(*attr_names)
Places ActiveRecord-style validations on the content type of the file assigned. The possible options are:
-
content_type: Allowed content types. Can be a single content type or an array. Each type can be a String or a Regexp. It should be noted that Internet Explorer uploads files with content_types that you may not expect. For example, JPEG images are given image/pjpeg and PNGs are image/x-png, so keep that in mind when determining how you match. Allows all by default.
-
not: Forbidden content types.
-
message: The message to display when the uploaded file has an invalid content type.
-
if: A lambda or name of an instance method. Validation will only be run is this lambda or method returns true.
-
unless: Same as if but validates if lambda or method returns false.
NOTE: If you do not specify an [attachment]_content_type field on your model, content_type validation will work _ONLY upon assignment_ and re-validation after the instance has been reloaded will always succeed. You'll still need to have a virtual attribute (created by attr_accessor) name [attachment]_content_type to be able to use this validator.
70 71 72 |
# File 'lib/paperclip/validators/attachment_content_type_validator.rb', line 70 def (*attr_names) validates_with AttachmentContentTypeValidator, _merge_attributes(attr_names) end |
- (Object) validates_attachment_presence(*attr_names)
Places ActiveRecord-style 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.
21 22 23 |
# File 'lib/paperclip/validators/attachment_presence_validator.rb', line 21 def (*attr_names) validates_with AttachmentPresenceValidator, _merge_attributes(attr_names) end |
- (Object) validates_attachment_size(*attr_names)
Places ActiveRecord-style validations on the size of the file assigned. The possible options are:
-
in: a Range of bytes (i.e. 1..1.megabyte),
-
less_than: equivalent to :in => 0..options
-
greater_than: equivalent to :in => options..Infinity
-
message: error message to display, use :min and :max as replacements
-
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.
97 98 99 |
# File 'lib/paperclip/validators/attachment_size_validator.rb', line 97 def (*attr_names) validates_with AttachmentSizeValidator, _merge_attributes(attr_names) end |