From 89e685474cee8b9e4877b458717ac509a853baa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Strza=C5=82kowski?= Date: Fri, 27 Aug 2010 16:44:28 +0200 Subject: [PATCH] Changes scaffold's template to use responders API --- .../templates/controller.rb | 43 ++++--------------- .../scaffold_controller_generator_test.rb | 2 - 2 files changed, 9 insertions(+), 36 deletions(-) diff --git a/railties/lib/rails/generators/rails/scaffold_controller/templates/controller.rb b/railties/lib/rails/generators/rails/scaffold_controller/templates/controller.rb index b21340f7550d9..6e19dbbceaddc 100644 --- a/railties/lib/rails/generators/rails/scaffold_controller/templates/controller.rb +++ b/railties/lib/rails/generators/rails/scaffold_controller/templates/controller.rb @@ -1,13 +1,11 @@ class <%= controller_class_name %>Controller < ApplicationController + respond_to :html, :xml # GET <%= route_url %> # GET <%= route_url %>.xml def index @<%= plural_table_name %> = <%= orm_class.all(class_name) %> - respond_to do |format| - format.html # index.html.erb - format.xml { render :xml => @<%= plural_table_name %> } - end + respond_with(@<%= plural_table_name %>) end # GET <%= route_url %>/1 @@ -15,10 +13,7 @@ def index def show @<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %> - respond_to do |format| - format.html # show.html.erb - format.xml { render :xml => @<%= singular_table_name %> } - end + respond_with(@<%= singular_table_name %>) end # GET <%= route_url %>/new @@ -26,10 +21,7 @@ def show def new @<%= singular_table_name %> = <%= orm_class.build(class_name) %> - respond_to do |format| - format.html # new.html.erb - format.xml { render :xml => @<%= singular_table_name %> } - end + respond_with(@<%= singular_table_name %>) end # GET <%= route_url %>/1/edit @@ -42,15 +34,8 @@ def edit def create @<%= singular_table_name %> = <%= orm_class.build(class_name, "params[:#{singular_table_name}]") %> - respond_to do |format| - if @<%= orm_instance.save %> - format.html { redirect_to(@<%= singular_table_name %>, :notice => '<%= human_name %> was successfully created.') } - format.xml { render :xml => @<%= singular_table_name %>, :status => :created, :location => @<%= singular_table_name %> } - else - format.html { render :action => "new" } - format.xml { render :xml => @<%= orm_instance.errors %>, :status => :unprocessable_entity } - end - end + flash[:notice] = "<%= human_name %> was successfully created." if @<%= orm_instance.save %> + respond_with(@<%= singular_table_name %>) end # PUT <%= route_url %>/1 @@ -58,15 +43,8 @@ def create def update @<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %> - respond_to do |format| - if @<%= orm_instance.update_attributes("params[:#{singular_table_name}]") %> - format.html { redirect_to(@<%= singular_table_name %>, :notice => '<%= human_name %> was successfully updated.') } - format.xml { head :ok } - else - format.html { render :action => "edit" } - format.xml { render :xml => @<%= orm_instance.errors %>, :status => :unprocessable_entity } - end - end + flash[:notice] = "<%= human_name %> was successfully updated." if @<%= orm_instance.update_attributes("params[:#{singular_table_name}]") %> + respond_with(@<%= singular_table_name %>) end # DELETE <%= route_url %>/1 @@ -75,9 +53,6 @@ def destroy @<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %> @<%= orm_instance.destroy %> - respond_to do |format| - format.html { redirect_to(<%= index_helper %>_url) } - format.xml { head :ok } - end + respond_with(@<%= singular_table_name %>) end end diff --git a/railties/test/generators/scaffold_controller_generator_test.rb b/railties/test/generators/scaffold_controller_generator_test.rb index d55ed22975844..09d6d0bbff302 100644 --- a/railties/test/generators/scaffold_controller_generator_test.rb +++ b/railties/test/generators/scaffold_controller_generator_test.rb @@ -35,13 +35,11 @@ def test_controller_skeleton_is_created assert_instance_method :create, content do |m| assert_match /@user = User\.new\(params\[:user\]\)/, m assert_match /@user\.save/, m - assert_match /@user\.errors/, m end assert_instance_method :update, content do |m| assert_match /@user = User\.find\(params\[:id\]\)/, m assert_match /@user\.update_attributes\(params\[:user\]\)/, m - assert_match /@user\.errors/, m end assert_instance_method :destroy, content do |m|