Module: ActiveRecordSurveyApi::Concerns::Controllers::NodeMapGroups
- Extended by:
- ActiveSupport::Concern
- Included in:
- NodeMapGroupsController, Concerns::Controllers::NodeMapGroups
- Defined in:
- lib/active_record_survey_api/concerns/controllers/node_map_groups.rb
Instance Method Summary collapse
- #all_node_map_groups ⇒ Object
- #create ⇒ Object
- #find_survey ⇒ Object
- #json_params ⇒ Object
- #new_node_map_group(p = nil) ⇒ Object
- #node_map_group_by_id(id) ⇒ Object
- #node_map_group_params ⇒ Object
Instance Method Details
#all_node_map_groups ⇒ Object
19 20 21 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 19 def all_node_map_groups @survey.node_map_groups end |
#create ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 7 def create @node_map_group = new_node_map_group @node_map_group.survey = @survey @node_map_group.attributes = node_map_group_params if !@node_map_group.save render json: JSONAPI::Serializer.serialize_errors(@node_map_group.errors), :status => 409 else render json: serialize_model(@node_map_group, serializer: ActiveRecordSurveyApi::NodeMapGroupSerializer) end end |
#find_survey ⇒ Object
47 48 49 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 47 def find_survey self.instance_variable_set "@survey", ActiveRecordSurvey::Survey.find(params[:survey_id]) end |
#json_params ⇒ Object
31 32 33 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 31 def json_params ActionController::Parameters.new(JSON.parse(request.body.read)) end |
#new_node_map_group(p = nil) ⇒ Object
27 28 29 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 27 def new_node_map_group(p = nil) ActiveRecordSurvey::NodeMapGroup.new(p) end |
#node_map_group_by_id(id) ⇒ Object
23 24 25 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 23 def node_map_group_by_id(id) ActiveRecordSurvey::NodeMapGroup.find(id) end |
#node_map_group_params ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/active_record_survey_api/concerns/controllers/node_map_groups.rb', line 35 def node_map_group_params json_params.require(:node_map_group).permit(:text, questions: []).tap { |whitelisted| whitelisted[:build_from_questions] = whitelisted[:questions] unless whitelisted[:questions].nil? whitelisted.delete(:questions) } end |