Sha256: cd85163a063584396f732d7d1ee74de07f17e92da1a874e2d3770afb3a16ea23

Contents?: true

Size: 1.15 KB

Versions: 3

Compression:

Stored size: 1.15 KB

Contents

class MenusController < ApplicationController
  before_action :set_menu, only: [:edit, :show, :update, :destroy]

  def index
    # @menus = Menu.orderByParent.page(params[:page]).per(1)
    @menus = Menu.orderByParent
  end

  def show
    @menus = Menu.where(parent_id: @menu.id)
  end

  def new
    @menu = Menu.new
    if params[:parent_id]
      @menu.parent_id = params[:parent_id]
    end
  end

  def create
    @menu = Menu.new(menu_params)
    respond_to do |format|
      if @menu.save
        format.html{ redirect_to menus_path }
      else
        format.html{ render :new }
      end
    end
  end

  def edit
  end

  def update
    respond_to do |format|
      if @menu.update(menu_params)
        format.html{ redirect_to menus_path }
      else
        format.html{ render :edit }
      end
    end
  end

  def destroy
    respond_to do |format|
      Menu.where(parent_id: @menu.id).destroy_all
      @menu.destroy
      format.html{ redirect_to menus_path }
    end
  end

  private
  def set_menu
    @menu = Menu.find params[:id]
  end

  def menu_params
    params.require(:menu).permit(:title, :path, :sort, :authpath, :parent_id, :icon)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
admin-sys-1.0.2 app/controllers/menus_controller.rb
admin-sys-1.0.1 app/controllers/menus_controller.rb
admin-sys-1.0.0 app/controllers/menus_controller.rb