aboutsummaryrefslogtreecommitdiffstats
path: root/actionview
diff options
context:
space:
mode:
authorGodfrey Chan <godfreykfc@gmail.com>2014-09-26 00:07:07 +0900
committerGodfrey Chan <godfreykfc@gmail.com>2014-09-26 01:42:18 +0900
commitb5571b3ccfbbfae7fea49c7934bb0348acceeeb4 (patch)
treedab869b1fef21206a34ebe364e7e9ba6fc6b52de /actionview
parentb008e4bd8a77e37e22af71dd7ec31fe17abf12e2 (diff)
downloadrails-b5571b3ccfbbfae7fea49c7934bb0348acceeeb4.tar.gz
rails-b5571b3ccfbbfae7fea49c7934bb0348acceeeb4.tar.bz2
rails-b5571b3ccfbbfae7fea49c7934bb0348acceeeb4.zip
Revert "Revert "Merge pull request #16888 from jejacks0n/render_template""
This reverts commit 585e75696b31395aee895e5366e331c07c3f5ee1.
Diffstat (limited to 'actionview')
-rw-r--r--actionview/CHANGELOG.md9
-rw-r--r--actionview/lib/action_view/rendering.rb4
-rw-r--r--actionview/test/actionpack/controller/render_test.rb23
3 files changed, 16 insertions, 20 deletions
diff --git a/actionview/CHANGELOG.md b/actionview/CHANGELOG.md
index ed58933472..8ac74dc938 100644
--- a/actionview/CHANGELOG.md
+++ b/actionview/CHANGELOG.md
@@ -1,3 +1,12 @@
+* Changed the meaning of `render "foo/bar"`.
+
+ Previously, calling `render "foo/bar"` in a controller action is equivalent
+ to `render file: "foo/bar"`. In Rails 4.2, this has been changed to mean
+ `render template: "foo/bar"` instead. If you need to render a file, please
+ change your code to use the explicit form (`render file: "foo/bar"`) instead.
+
+ *Jeremy Jackson*
+
* Add support for ARIA attributes in tags.
Example:
diff --git a/actionview/lib/action_view/rendering.rb b/actionview/lib/action_view/rendering.rb
index 81d5836a8c..5cbdfdf6c0 100644
--- a/actionview/lib/action_view/rendering.rb
+++ b/actionview/lib/action_view/rendering.rb
@@ -108,7 +108,7 @@ module ActionView
end
# Normalize args by converting render "foo" to render :action => "foo" and
- # render "foo/bar" to render :file => "foo/bar".
+ # render "foo/bar" to render :template => "foo/bar".
# :api: private
def _normalize_args(action=nil, options={})
options = super(action, options)
@@ -118,7 +118,7 @@ module ActionView
options = action
when String, Symbol
action = action.to_s
- key = action.include?(?/) ? :file : :action
+ key = action.include?(?/) ? :template : :action
options[key] = action
else
options[:partial] = action
diff --git a/actionview/test/actionpack/controller/render_test.rb b/actionview/test/actionpack/controller/render_test.rb
index b3b51ae583..563caee8a2 100644
--- a/actionview/test/actionpack/controller/render_test.rb
+++ b/actionview/test/actionpack/controller/render_test.rb
@@ -91,17 +91,17 @@ class TestController < ApplicationController
# :ported:
def render_hello_world
- render :template => "test/hello_world"
+ render "test/hello_world"
end
def render_hello_world_with_last_modified_set
response.last_modified = Date.new(2008, 10, 10).to_time
- render :template => "test/hello_world"
+ render "test/hello_world"
end
# :ported: compatibility
def render_hello_world_with_forward_slash
- render :template => "/test/hello_world"
+ render "/test/hello_world"
end
# :ported:
@@ -111,7 +111,7 @@ class TestController < ApplicationController
# :deprecated:
def render_template_in_top_directory_with_slash
- render :template => '/shared'
+ render '/shared'
end
# :ported:
@@ -160,13 +160,6 @@ class TestController < ApplicationController
end
# :ported:
- def render_file_as_string_with_instance_variables
- @secret = 'in the sauce'
- path = File.expand_path(File.join(File.dirname(__FILE__), '../../fixtures/test/render_file_with_ivar'))
- render path
- end
-
- # :ported:
def render_file_not_using_full_path
@secret = 'in the sauce'
render :file => 'test/render_file_with_ivar'
@@ -194,7 +187,7 @@ class TestController < ApplicationController
def render_file_as_string_with_locals
path = File.expand_path(File.join(File.dirname(__FILE__), '../../fixtures/test/render_file_with_locals'))
- render path, :locals => {:secret => 'in the sauce'}
+ render file: path, :locals => {:secret => 'in the sauce'}
end
def accessing_request_in_template
@@ -794,12 +787,6 @@ class RenderTest < ActionController::TestCase
end
# :ported:
- def test_render_file_as_string_with_instance_variables
- get :render_file_as_string_with_instance_variables
- assert_equal "The secret is in the sauce\n", @response.body
- end
-
- # :ported:
def test_render_file_not_using_full_path
get :render_file_not_using_full_path
assert_equal "The secret is in the sauce\n", @response.body