Class: AptTextValidator
- Inherits:
-
ActiveModel::EachValidator
- Object
- ActiveModel::EachValidator
- AptTextValidator
- Defined in:
- lib/validators/apt_text_validator.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(options) ⇒ AptTextValidator
constructor
A new instance of AptTextValidator.
- #validate_each(record, attribute, value) ⇒ Object
Constructor Details
#initialize(options) ⇒ AptTextValidator
Returns a new instance of AptTextValidator.
6 7 8 |
# File 'lib/validators/apt_text_validator.rb', line 6 def initialize() super() end |
Class Method Details
.regexp ⇒ Object
11 12 13 14 15 16 17 18 |
# File 'lib/validators/apt_text_validator.rb', line 11 def regexp @@joined_prohibited_words ||= AptValidator::ProhibitedWord.pluck(:word).join("|") if @@joined_prohibited_words.empty? /(?!.*)/ else /(#{@@joined_prohibited_words})/i end end |
.valid?(value) ⇒ Boolean
20 21 22 |
# File 'lib/validators/apt_text_validator.rb', line 20 def valid?(value) !!(value =~ regexp) end |
Instance Method Details
#validate_each(record, attribute, value) ⇒ Object
25 26 27 28 29 |
# File 'lib/validators/apt_text_validator.rb', line 25 def validate_each(record, attribute, value) if self.class.valid?(value) record.errors[attribute] << ([:message] || :invalid) end end |