1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- class CoursesController < ApplicationController
- before_action :set_course, only: [:show, :edit, :update, :destroy]
- before_action :authenticate_user!, except: [:show, :index]
- def index
- @courses = Course.all
- end
- def show
- end
- def new
- @course = Course.new
- end
- def edit
- end
- def create
- @course = Course.new(course_params)
- @course.user_id = current_user.id
- if @course.save
- redirect_to @course, notice: 'Course was successfully created.'
- else
- render action: 'new'
- end
- end
- def update
- if @course.update(course_params)
- redirect_to @course, notice: 'Course was successfully updated.'
- else
- render action: 'edit'
- end
- end
- def destroy
- @course.destroy
- redirect_to courses_url
- end
- private
- # Use callbacks to share common setup or constraints between actions.
- def set_course
- @course = Course.find(params[:id])
- end
- # Never trust parameters from the scary internet, only allow the white list through.
- def course_params
- params.require(:course).permit(:title, :description, :language, :prerequisites, :duration, :rating)
- end
- end
|