Class: ActiveRecordApi::Rest::Parameters
- Inherits:
-
Object
- Object
- ActiveRecordApi::Rest::Parameters
- Includes:
- ActiveAttr::Model
- Defined in:
- lib/active_record_api/rest/parameters.rb
Instance Attribute Summary collapse
-
#action_name ⇒ Object
Returns the value of attribute action_name.
-
#additional_valid_params ⇒ Object
Returns the value of attribute additional_valid_params.
-
#controller_name ⇒ Object
Returns the value of attribute controller_name.
-
#model_klass ⇒ Object
Returns the value of attribute model_klass.
-
#pagination_param_name ⇒ Object
Returns the value of attribute pagination_param_name.
-
#params ⇒ Object
Returns the value of attribute params.
Instance Method Summary collapse
- #limit ⇒ Object
- #modifiable_params ⇒ Object
- #not_allowed_params ⇒ Object
- #queryable_params ⇒ Object
- #valid_params(base_params) ⇒ Object
Instance Attribute Details
#action_name ⇒ Object
Returns the value of attribute action_name.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def action_name @action_name end |
#additional_valid_params ⇒ Object
Returns the value of attribute additional_valid_params.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def additional_valid_params @additional_valid_params end |
#controller_name ⇒ Object
Returns the value of attribute controller_name.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def controller_name @controller_name end |
#model_klass ⇒ Object
Returns the value of attribute model_klass.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def model_klass @model_klass end |
#pagination_param_name ⇒ Object
Returns the value of attribute pagination_param_name.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def pagination_param_name @pagination_param_name end |
#params ⇒ Object
Returns the value of attribute params.
5 6 7 |
# File 'lib/active_record_api/rest/parameters.rb', line 5 def params @params end |
Instance Method Details
#limit ⇒ Object
20 21 22 |
# File 'lib/active_record_api/rest/parameters.rb', line 20 def limit @limit ||= params[:limit]&.to_i || 50 end |
#modifiable_params ⇒ Object
7 8 9 |
# File 'lib/active_record_api/rest/parameters.rb', line 7 def modifiable_params @modifiable ||= params.permit!.to_h.select! { |key, _value| valid_params(modifiable_names).include?(key.to_sym) } end |
#not_allowed_params ⇒ Object
24 25 26 |
# File 'lib/active_record_api/rest/parameters.rb', line 24 def not_allowed_params @not_allowed_params ||= clean_request_names - (valid_params(queryable_names) + Array.wrap(additional_valid_params)) end |
#queryable_params ⇒ Object
11 12 13 |
# File 'lib/active_record_api/rest/parameters.rb', line 11 def queryable_params @queryable ||= params.permit!.to_h.select! { |key, _value| valid_params(queryable_names).include?(key.to_sym) } end |
#valid_params(base_params) ⇒ Object
15 16 17 18 |
# File 'lib/active_record_api/rest/parameters.rb', line 15 def valid_params(base_params) base_valid_params = base_params + ['organization_id'] + [:organization_id] + ['id'] + [:id] return clean(base_valid_params) end |