Class: Grape::Validations::DefaultValidator
- Defined in:
- lib/grape/validations/validators/default.rb
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
-
#initialize(attrs, options, required, scope, opts = {}) ⇒ DefaultValidator
constructor
A new instance of DefaultValidator.
- #validate!(params) ⇒ Object
- #validate_param!(attr_name, params) ⇒ Object
Methods inherited from Base
convert_to_short_name, #fail_fast?, inherited, #message, #options_key?, #validate
Constructor Details
#initialize(attrs, options, required, scope, opts = {}) ⇒ DefaultValidator
Returns a new instance of DefaultValidator.
6 7 8 9 |
# File 'lib/grape/validations/validators/default.rb', line 6 def initialize(attrs, , required, scope, opts = {}) @default = super end |
Instance Method Details
#validate!(params) ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/grape/validations/validators/default.rb', line 21 def validate!(params) attrs = SingleAttributeIterator.new(self, @scope, params) attrs.each do |resource_params, attr_name| if resource_params.is_a?(Hash) && resource_params[attr_name].nil? validate_param!(attr_name, resource_params) end end end |
#validate_param!(attr_name, params) ⇒ Object
11 12 13 14 15 16 17 18 19 |
# File 'lib/grape/validations/validators/default.rb', line 11 def validate_param!(attr_name, params) params[attr_name] = if @default.is_a? Proc @default.call elsif @default.frozen? || !duplicatable?(@default) @default else duplicate(@default) end end |