diff options
author | Yehuda Katz <wycats@gmail.com> | 2009-08-07 06:32:17 -0300 |
---|---|---|
committer | Yehuda Katz <wycats@gmail.com> | 2009-08-07 06:32:17 -0300 |
commit | d94ba11295c74e5a661a78a93d6d0259ab01fa50 (patch) | |
tree | efa548fc6033a9fe746735ab03dc096808ff025c /actionpack/lib/action_view/render/rendering.rb | |
parent | 493d84ce2f1e25081a394fd70ac4e23b6a2be682 (diff) | |
download | rails-d94ba11295c74e5a661a78a93d6d0259ab01fa50.tar.gz rails-d94ba11295c74e5a661a78a93d6d0259ab01fa50.tar.bz2 rails-d94ba11295c74e5a661a78a93d6d0259ab01fa50.zip |
Continue reworking the partial path.
* TODO: Review ActionController calling render_template for certain partials.
Might we be able to save logic by always delegating to AV's render_partial?
Diffstat (limited to 'actionpack/lib/action_view/render/rendering.rb')
-rw-r--r-- | actionpack/lib/action_view/render/rendering.rb | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/actionpack/lib/action_view/render/rendering.rb b/actionpack/lib/action_view/render/rendering.rb index a721ade4e1..39b8608c68 100644 --- a/actionpack/lib/action_view/render/rendering.rb +++ b/actionpack/lib/action_view/render/rendering.rb @@ -13,12 +13,15 @@ module ActionView def render(options = {}, locals = {}, &block) #:nodoc: case options when String, NilClass - _render_partial_unknown_type(:partial => options, :locals => locals || {}) + _render_partial(:partial => options, :locals => locals || {}) when Hash layout = options[:layout] - if options.key?(:partial) || block_given? - return _render_partial(layout, options, &block) + if block_given? + return concat(_render_partial(options.merge(:partial => layout), &block)) + elsif options.key?(:partial) + layout = _pick_partial_template(layout) if layout + return _render_content(_render_partial(options), layout, options[:locals]) end layout = find_by_parts(layout, {:formats => formats}) if layout |