Class: RailsValidationApi::Validator
- Inherits:
-
Object
- Object
- RailsValidationApi::Validator
- Includes:
- RailsParam
- Defined in:
- lib/rails_validation_api/validator.rb
Instance Attribute Summary collapse
-
#errors ⇒ Object
readonly
Returns the value of attribute errors.
-
#params ⇒ Object
Returns the value of attribute params.
Instance Method Summary collapse
-
#initialize(params, rules) ⇒ Validator
constructor
A new instance of Validator.
- #validate ⇒ Object
Constructor Details
#initialize(params, rules) ⇒ Validator
Returns a new instance of Validator.
13 14 15 16 17 |
# File 'lib/rails_validation_api/validator.rb', line 13 def initialize(params, rules) self.params = params.is_a?(ActionController::Parameters) ? params.to_unsafe_h : params @rules = rules @errors = [] end |
Instance Attribute Details
#errors ⇒ Object (readonly)
Returns the value of attribute errors.
11 12 13 |
# File 'lib/rails_validation_api/validator.rb', line 11 def errors @errors end |
#params ⇒ Object
Returns the value of attribute params.
10 11 12 |
# File 'lib/rails_validation_api/validator.rb', line 10 def params @params end |
Instance Method Details
#validate ⇒ Object
19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/rails_validation_api/validator.rb', line 19 def validate return false if @rules.nil? || @rules.empty? @rules.each do |rule_name, rule| validate_field(rule_name) end if @errors.any? @errors.each do |error| raise RailsValidationApi::Error.new(error[:field], :unprocessable_entity, error[:message]) end end end |