Module: GrapeOnRails::Macros

Includes:
Attributes
Included in:
Validator
Defined in:
lib/grape_on_rails/macros.rb

Constant Summary

Constants included from Attributes

Attributes::TYPE

Instance Method Summary collapse

Methods included from Attributes

#declared_attrs, #declared_params, #undeclare_params

Instance Method Details

#optional(*attrs) ⇒ Object



14
15
16
17
18
19
# File 'lib/grape_on_rails/macros.rb', line 14

def optional *attrs
  options = attrs.extract_options!
  return if attrs.any?{|a| params[a].nil?}
  options.each{|k, v| verify k, attrs, v}
  declared_attrs attrs
end

#requires(*attrs) ⇒ Object

Raises:

  • (APIError::ValidationError)


7
8
9
10
11
12
# File 'lib/grape_on_rails/macros.rb', line 7

def requires *attrs
  options = attrs.extract_options!
  raise APIError::ValidationError if attrs.any?{|a| params[a].nil?}
  options.each{|k, v| verify k, attrs, v}
  declared_attrs attrs
end