Sha256: 81f62a79fc4fdca0d57d709d400b184eab0fca6c6ec341c57692d750f42df7ee

Contents?: true

Size: 1.61 KB

Versions: 19

Compression:

Stored size: 1.61 KB

Contents

class Admin::<%= class_name.pluralize %>Controller < Comfy::Admin::BaseController

  before_action :build_<%= file_name %>,  only: [:new, :create]
  before_action :load_<%= file_name %>,   only: [:show, :edit, :update, :destroy]

  def index
    @<%= file_name.pluralize %> = <%= class_name %>.page(params[:page])
  end

  def show
    render
  end

  def new
    render
  end

  def edit
    render
  end

  def create
    @<%= file_name %>.save!
    flash[:success] = '<%= class_name.titleize %> created'
    redirect_to action: :show, id: @<%= file_name %>
  rescue ActiveRecord::RecordInvalid
    flash.now[:danger] = 'Failed to create <%= class_name.titleize %>'
    render action: :new
  end

  def update
    @<%= file_name %>.update!(<%= file_name %>_params)
    flash[:success] = '<%= class_name.titleize %> updated'
    redirect_to action: :show, id: @<%= file_name %>
  rescue ActiveRecord::RecordInvalid
    flash.now[:danger] = 'Failed to update <%= class_name.titleize %>'
    render action: :edit
  end

  def destroy
    @<%= file_name %>.destroy
    flash[:success] = '<%= class_name.titleize %> deleted'
    redirect_to action: :index
  end

protected

  def build_<%= file_name %>
    @<%= file_name %> = <%= class_name %>.new(<%= file_name %>_params)
  end

  def load_<%= file_name %>
    @<%= file_name %> = <%= class_name %>.find(params[:id])
  rescue ActiveRecord::RecordNotFound
    flash[:danger] = '<%= class_name.titleize %> not found'
    redirect_to action: :index
  end

  def <%= file_name %>_params
    params.fetch(:<%= file_name %>, {}).permit(<%= model_attrs.collect{|attr| ":#{attr.name}"}.join(', ') %>)
  end
end

Version data entries

19 entries across 19 versions & 8 rubygems

Version Path
comfortable_media_surfer-3.1.1 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_media_surfer-3.1.0 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_media_surfer-3.0.0 lib/generators/comfy/scaffold/templates/controller.rb.tt
occams-1.0.3 lib/generators/occams/scaffold/templates/controller.rb.tt
occams-1.0.2 lib/generators/occams/scaffold/templates/controller.rb.tt
occams-1.0.1 lib/generators/occams/scaffold/templates/controller.rb.tt
occams-1.0.0 lib/generators/occams/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.19 lib/generators/comfy/scaffold/templates/controller.rb.tt
PixelForce_ETS-0.0.2 lib/generators/comfy/scaffold/templates/controller.rb.tt
PixelForce_ETS-0.0.1 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest2-0.0.4 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest2-0.0.3 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest2-0.0.2 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest2-0.0.1 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest-0.0.1 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcyEtsTest-2.2.19 lib/generators/comfy/scaffold/templates/controller.rb.tt
ComfortableMexicanSofa-2.0.18 lib/generators/comfy/scaffold/templates/controller.rb.tt
kcy1-1.0 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.18 lib/generators/comfy/scaffold/templates/controller.rb.tt