Sha256: c99b88db45e05fc9918f9b3667022ab36472cf8bccb7a1a4dffd79b047f72533
Contents?: true
Size: 1.56 KB
Versions: 1
Compression:
Stored size: 1.56 KB
Contents
module HyperAdmin class ResourceController < ApplicationController before_action :set_resource_class before_action :permit_params, only: [ :create, :update ] def index @resources = resource_class.all render 'admin/resources/index', layout: layout end def show @resource = resource render 'admin/resources/show', layout: layout end def new @resource = resource_class.new render 'admin/resources/new', layout: layout end def edit @resource = resource render 'admin/resources/edit', layout: layout end def create @resource = @resource_class.new params[@resource_class.model_name.param_key] if @resource.save redirect_to [ :admin, @resource ] else render "admin/resources/new", layout: layout end end def update @resource = @resource_class.find params[:id] if @resource.update params[@resource_class.model_name.param_key] redirect_to [ :admin, @resource ] else render "admin/resources/edit", layout: layout end end def destroy @resource = @resource_class.find params[:id] @resource.destroy redirect_to [ :admin, @resource_class ] end def resource resource_class.find params[:id] end def resource_class raise "This method must be overridden" end protected def set_resource_class @resource_class = resource_class end def permit_params params.permit! end def layout 'hyper_admin/application' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
hyper_admin-0.2.0 | app/controllers/hyper_admin/resource_controller.rb |