Class: ActiveModel::Validations::UuidValidator
- Inherits:
-
EachValidator
- Object
- EachValidator
- ActiveModel::Validations::UuidValidator
- Defined in:
- lib/active_model/validations/uuid_validator.rb
Constant Summary collapse
- RE_STRING =
"[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}"
Instance Method Summary collapse
-
#initialize(options) ⇒ UuidValidator
constructor
A new instance of UuidValidator.
- #validate_each(record, attribute, value) ⇒ Object
Constructor Details
#initialize(options) ⇒ UuidValidator
Returns a new instance of UuidValidator.
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/active_model/validations/uuid_validator.rb', line 9 def initialize() super @re = case when [:upper_only] /\A#{RE_STRING.upcase}\z/ when [:lower_only] /\A#{RE_STRING.downcase}\z/ else /\A#{RE_STRING}\z/i end end |
Instance Method Details
#validate_each(record, attribute, value) ⇒ Object
21 22 23 |
# File 'lib/active_model/validations/uuid_validator.rb', line 21 def validate_each(record, attribute, value) record.errors.add(attribute, :not_an_uuid, ) unless value =~ @re end |