Class: CompletionKit::Api::V1::CriteriaController

Inherits:
BaseController
  • Object
show all
Defined in:
app/controllers/completion_kit/api/v1/criteria_controller.rb

Instance Method Summary collapse

Instance Method Details

#createObject



15
16
17
18
19
20
21
22
23
# File 'app/controllers/completion_kit/api/v1/criteria_controller.rb', line 15

def create
  criteria = Criteria.new(criteria_params.except(:metric_ids))
  if criteria.save
    replace_metric_memberships(criteria, params[:metric_ids]) if params.key?(:metric_ids)
    render json: criteria.reload, status: :created
  else
    render json: {errors: criteria.errors}, status: :unprocessable_entity
  end
end

#destroyObject



34
35
36
37
# File 'app/controllers/completion_kit/api/v1/criteria_controller.rb', line 34

def destroy
  @criteria.destroy!
  head :no_content
end

#indexObject



7
8
9
# File 'app/controllers/completion_kit/api/v1/criteria_controller.rb', line 7

def index
  render json: Criteria.order(created_at: :desc)
end

#showObject



11
12
13
# File 'app/controllers/completion_kit/api/v1/criteria_controller.rb', line 11

def show
  render json: @criteria
end

#updateObject



25
26
27
28
29
30
31
32
# File 'app/controllers/completion_kit/api/v1/criteria_controller.rb', line 25

def update
  if @criteria.update(criteria_params.except(:metric_ids))
    replace_metric_memberships(@criteria, params[:metric_ids]) if params.key?(:metric_ids)
    render json: @criteria.reload
  else
    render json: {errors: @criteria.errors}, status: :unprocessable_entity
  end
end