diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2019-01-24 17:19:01 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-24 17:19:01 -0500 |
commit | d2085f2bc497a86bb7800f34b7b958dd10550e71 (patch) | |
tree | b5f9cad6c2430348760d08d06172d3cd4836b174 | |
parent | 267136d87d0d032f7a95c62f115940393e1620e5 (diff) | |
parent | 44c07fd0be1368f8388669f9d660b75eb8e49ac9 (diff) | |
download | rails-d2085f2bc497a86bb7800f34b7b958dd10550e71.tar.gz rails-d2085f2bc497a86bb7800f34b7b958dd10550e71.tar.bz2 rails-d2085f2bc497a86bb7800f34b7b958dd10550e71.zip |
Merge pull request #35045 from paracycle/uk-fix-partial-renderer
Fix partial renderer assuming `locals` responds to `symbolize_keys`
-rw-r--r-- | actionview/lib/action_view/renderer/partial_renderer.rb | 2 | ||||
-rw-r--r-- | actionview/test/actionpack/controller/render_test.rb | 10 |
2 files changed, 6 insertions, 6 deletions
diff --git a/actionview/lib/action_view/renderer/partial_renderer.rb b/actionview/lib/action_view/renderer/partial_renderer.rb index cb850d75ee..f175c30aa1 100644 --- a/actionview/lib/action_view/renderer/partial_renderer.rb +++ b/actionview/lib/action_view/renderer/partial_renderer.rb @@ -363,7 +363,7 @@ module ActionView @options = options @block = block - @locals = options[:locals] ? options[:locals].symbolize_keys : {} + @locals = options[:locals] || {} @details = extract_details(options) prepend_formats(options[:formats]) diff --git a/actionview/test/actionpack/controller/render_test.rb b/actionview/test/actionpack/controller/render_test.rb index 204903c60c..727d3fbc1a 100644 --- a/actionview/test/actionpack/controller/render_test.rb +++ b/actionview/test/actionpack/controller/render_test.rb @@ -485,8 +485,8 @@ class TestController < ActionController::Base render partial: "customer", locals: { customer: Customer.new("david") } end - def partial_with_string_locals - render partial: "customer", locals: { "customer" => Customer.new("david") } + def partial_with_hashlike_locals + render partial: "customer", locals: ActionController::Parameters.new(customer: Customer.new("david")) end def partial_with_form_builder @@ -691,7 +691,7 @@ class RenderTest < ActionController::TestCase get :partial_with_locals, to: "test#partial_with_locals" get :partial_with_nested_object, to: "test#partial_with_nested_object" get :partial_with_nested_object_shorthand, to: "test#partial_with_nested_object_shorthand" - get :partial_with_string_locals, to: "test#partial_with_string_locals" + get :partial_with_hashlike_locals, to: "test#partial_with_hashlike_locals" get :partials_list, to: "test#partials_list" get :render_action_hello_world, to: "test#render_action_hello_world" get :render_action_hello_world_as_string, to: "test#render_action_hello_world_as_string" @@ -1292,8 +1292,8 @@ class RenderTest < ActionController::TestCase assert_equal "Hello: david", @response.body end - def test_partial_with_string_locals - get :partial_with_string_locals + def test_partial_with_hashlike_locals + get :partial_with_hashlike_locals assert_equal "Hello: david", @response.body end |