diff options
author | Nikolay Shebanov <nikolay.shebanov@gmail.com> | 2014-12-09 01:13:40 +0100 |
---|---|---|
committer | Nikolay Shebanov <nikolay.shebanov@gmail.com> | 2014-12-19 13:52:12 +0100 |
commit | f02a35b86efea24f1e2ab684bc8081ced5eb3b1a (patch) | |
tree | b971a3794c350f209aba4ba2a8bdc3433f317120 /actionview | |
parent | 10e989b76df1a833f9da22598c1a368777374a01 (diff) | |
download | rails-f02a35b86efea24f1e2ab684bc8081ced5eb3b1a.tar.gz rails-f02a35b86efea24f1e2ab684bc8081ced5eb3b1a.tar.bz2 rails-f02a35b86efea24f1e2ab684bc8081ced5eb3b1a.zip |
Make possible to use blocks with short version of render partial
Diffstat (limited to 'actionview')
4 files changed, 13 insertions, 1 deletions
diff --git a/actionview/CHANGELOG.md b/actionview/CHANGELOG.md index 729717608f..b0facc11b6 100644 --- a/actionview/CHANGELOG.md +++ b/actionview/CHANGELOG.md @@ -1 +1,5 @@ +* Make possible to use blocks with short version of `render "partial"` helper. + + *Nikolay Shebanov* + Please check [4-2-stable](https://github.com/rails/rails/blob/4-2-stable/actionview/CHANGELOG.md) for previous changes. diff --git a/actionview/lib/action_view/helpers/rendering_helper.rb b/actionview/lib/action_view/helpers/rendering_helper.rb index e11670e00d..827932d8e2 100644 --- a/actionview/lib/action_view/helpers/rendering_helper.rb +++ b/actionview/lib/action_view/helpers/rendering_helper.rb @@ -32,7 +32,7 @@ module ActionView view_renderer.render(self, options) end else - view_renderer.render_partial(self, :partial => options, :locals => locals) + view_renderer.render_partial(self, :partial => options, :locals => locals, &block) end end diff --git a/actionview/test/fixtures/test/_partial_shortcut_with_block_content.html.erb b/actionview/test/fixtures/test/_partial_shortcut_with_block_content.html.erb new file mode 100644 index 0000000000..352128f3ba --- /dev/null +++ b/actionview/test/fixtures/test/_partial_shortcut_with_block_content.html.erb @@ -0,0 +1,3 @@ +<%= render "test/layout_for_block_with_args" do |arg_1, arg_2| %> + Yielded: <%= arg_1 %>/<%= arg_2 %> +<% end %> diff --git a/actionview/test/template/render_test.rb b/actionview/test/template/render_test.rb index 4e502bede9..11f9b38a3a 100644 --- a/actionview/test/template/render_test.rb +++ b/actionview/test/template/render_test.rb @@ -466,6 +466,11 @@ module RenderTestCases @view.render(:partial => 'test/partial_with_partial', :layout => 'test/layout_for_partial', :locals => { :name => 'Foo!'}) end + def test_render_partial_shortcut_with_block_content + assert_equal %(Before (shortcut test)\nBefore\n\n Yielded: arg1/arg2\n\nAfter\nAfter), + @view.render(partial: "test/partial_shortcut_with_block_content", layout: "test/layout_for_partial", locals: { name: "shortcut test" }) + end + def test_render_layout_with_a_nested_render_layout_call assert_equal %(Before (Foo!)\nBefore (Bar!)\npartial html\nAfter\npartial with layout\n\nAfter), @view.render(:partial => 'test/partial_with_layout', :layout => 'test/layout_for_partial', :locals => { :name => 'Foo!'}) |