Add admin/pages scaffold and basic page render

This commit is contained in:
Wen-Tien Chang committed 2009-05-08 01:18:16 +08:00
1 parent 40831c1314
commit 66604d00f4
12 files changed
+277 -5

No files matched your search

+82
View File
@@ -0,0 +1,82 @@
class Admin::PagesController < ApplicationController
# GET /pages
# GET /pages.xml
def index
@pages = Page.all
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @pages }
end
end
# GET /pages/1
# GET /pages/1.xml
def show
@page = Page.find(params[:id])
redirect_to "/#{@page.name}"
end
# GET /pages/new
# GET /pages/new.xml
def new
@page = Page.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @pages }
end
end
# GET /pages/1/edit
def edit
@page = Page.find(params[:id])
end
# POST /pages
# POST /pages.xml
def create
@page = Page.new(params[:page])
respond_to do |format|
if @page.save
flash[:notice] = 'Page was successfully created.'
format.html { redirect_to admin_pages_url }
format.xml { render :xml => @page, :status => :created, :location => @pages }
else
format.html { render :action => "new" }
format.xml { render :xml => @page.errors, :status => :unprocessable_entity }
end
end
end
# PUT /pages/1
# PUT /pages/1.xml
def update
@page = Page.find(params[:id])
respond_to do |format|
if @page.update_attributes(params[:page])
flash[:notice] = 'Page was successfully updated.'
format.html { redirect_to admin_pages_url }
format.xml { head :ok }
else
format.html { render :action => "edit" }
format.xml { render :xml => @page.errors, :status => :unprocessable_entity }
end
end
end
# DELETE /pages/1
# DELETE /pages/1.xml
def destroy
@page = Page.find(params[:id])
@page.destroy
respond_to do |format|
format.html { redirect_to admin_pages_url }
format.xml { head :ok }
end
end
end
+14
View File
@@ -0,0 +1,14 @@
class PagesController < ApplicationController
def show
@page = Page.find_by_name(params[:page_name])
if @page
render :text => @page.content
else
render :text => '404 not found'
end
end
end