Sha256: cf9d238ec9152b87772183f176bf226c6e4f241eb6e4d9778065a9ee36124d59

Contents?: true

Size: 1.62 KB

Versions: 18

Compression:

Stored size: 1.62 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_attributes!(<%= 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

18 entries across 18 versions & 1 rubygems

Version Path
comfortable_mexican_sofa-2.0.17 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.16 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.15 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.14 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.13 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.12 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.11 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.10 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.9 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.8 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.7 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.6 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.5 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.4 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.3 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.2 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.1 lib/generators/comfy/scaffold/templates/controller.rb.tt
comfortable_mexican_sofa-2.0.0 lib/generators/comfy/scaffold/templates/controller.rb.tt