Module: RailsApiDoc::Controller::Request::DSL
- Included in:
- Params
- Defined in:
- lib/rails_api_doc/controller/request/dsl.rb
Instance Method Summary collapse
-
#parameter(*arguments, &block) ⇒ Object
(also: #param, #req)
Use parameter in controller to define REQUEST parameter.
Instance Method Details
#parameter(*arguments, &block) ⇒ Object Also known as: param, req
Use parameter in controller to define REQUEST parameter. Adds it to repository: RailsApiDoc::Controller::Request::Repository Params can be defined in several ways:
-
parameter :name, type: :string
-
parameter {
dose_form_attributes: { model: 'Rxnorm::RxDoseForm' },
input_method_attributes: { model: 'TreatmentInfo::InputMethod' },
input_condition_attributes: { model: 'Drugs::InputCondition' },
input_duration_attributes: { model: 'Drugs::InputDuration' }
}, type: :object do
parameter :id
parameter :name
end
-
parameter :name, :code, type: :string
-
param :name, :string, model: ‘Name’
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/rails_api_doc/controller/request/dsl.rb', line 28 def parameter(*arguments, &block) = arguments. raise ArgumentError, 'Parameter already defined.' if repo.key?(name) (, block_given?) # 4) return if second_argument_type_def(, arguments) arguments.each do |param| # 2) if param.is_a?(Hash) param.each do |param_name, | = .merge() define_parameter(param_name, , &block) end else # 1), 3) define_parameter(param, , &block) end end end |