mmibordeaux/teach

View on GitHub
app/controllers/jobs_controller.rb

Summary

Maintainability
A
1 hr
Test Coverage
class JobsController < ApplicationController
  load_and_authorize_resource

  add_breadcrumb 'Métiers', :jobs_path

  def index
    @jobs = Job.all
    @title = 'Métiers'
  end

  def show
  end

  def new
    @job = Job.new
  end

  def edit
  end

  def create
    @job = Job.new(job_params)

    respond_to do |format|
      if @job.save
        format.html { redirect_to @job, notice: 'Job was successfully created.' }
        format.json { render :show, status: :created, location: @job }
      else
        format.html { render :new }
        format.json { render json: @job.errors, status: :unprocessable_entity }
      end
    end
  end

  def update
    respond_to do |format|
      if @job.update(job_params)
        format.html { redirect_to @job, notice: 'Job was successfully updated.' }
        format.json { render :show, status: :ok, location: @job }
      else
        format.html { render :edit }
        format.json { render json: @job.errors, status: :unprocessable_entity }
      end
    end
  end

  def destroy
    @job.destroy
    respond_to do |format|
      format.html { redirect_to jobs_url, notice: 'Job was successfully destroyed.' }
      format.json { head :no_content }
    end
  end

  private

  def job_params
    params.require(:job).permit(:label, field_ids: [])
  end
end