Sha256: 6faced92f31b4677e9339f2540f5a60d5d6f42bec44012d0a60bdb84dbb45e12

Contents?: true

Size: 1.24 KB

Versions: 2

Compression:

Stored size: 1.24 KB

Contents

#---
# Excerpted from "Agile Web Development with Rails, 2nd Ed."
# We make no guarantees that this code is fit for any purpose.
# Visit http://www.pragmaticprogrammer.com/titles/rails2 for more book information.
#---

class AdminController < ApplicationController

  before_filter :authorize

  # ....


  def index
    list
    render :action => 'list'
  end

  def list
    #@product_pages, @products = paginate :products, :per_page => 10

    @products = Product.paginate :page => params[:page]
  end

  def show
    @product = Product.find(params[:id])
  end

  def new
    @product = Product.new
  end

  def create
    @product = Product.new(params[:product])
    if @product.save
      flash[:notice] = 'Product was successfully created.'
      redirect_to :action => 'list'
    else
      render :action => 'new'
    end
  end

  def edit
    @product = Product.find(params[:id])
  end

  def update
    @product = Product.find(params[:id])
    if @product.update_attributes(params[:product])
      flash[:notice] = 'Product was successfully updated.'
      redirect_to :action => 'show', :id => @product
    else
      render :action => 'edit'
    end
  end

  def destroy
    Product.find(params[:id]).destroy
    redirect_to :action => 'list'
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
amrita2-2.0.1 sample/depot/app/controllers/admin_controller.rb
amrita2-2.0.2 sample/depot/app/controllers/admin_controller.rb