aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_controller/layout.rb
diff options
context:
space:
mode:
authorJamis Buck <jamis@37signals.com>2005-06-01 13:39:58 +0000
committerJamis Buck <jamis@37signals.com>2005-06-01 13:39:58 +0000
commite4c047e4891c446024e35548e872704d132ad2f7 (patch)
tree0086e3c6c70d3276aeef027aac126bb3ea7d2220 /actionpack/lib/action_controller/layout.rb
parent46e68538c08d751554b2c6f512659993ef62c218 (diff)
downloadrails-e4c047e4891c446024e35548e872704d132ad2f7.tar.gz
rails-e4c047e4891c446024e35548e872704d132ad2f7.tar.bz2
rails-e4c047e4891c446024e35548e872704d132ad2f7.zip
render(:action) and render() are the only two render calls to use a layout by default. All others default to :layout => false. Also, allow :layout => true to be a synonym for :layout => nil.
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@1378 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
Diffstat (limited to 'actionpack/lib/action_controller/layout.rb')
-rw-r--r--actionpack/lib/action_controller/layout.rb10
1 files changed, 4 insertions, 6 deletions
diff --git a/actionpack/lib/action_controller/layout.rb b/actionpack/lib/action_controller/layout.rb
index 52b02f851d..237e274173 100644
--- a/actionpack/lib/action_controller/layout.rb
+++ b/actionpack/lib/action_controller/layout.rb
@@ -220,12 +220,10 @@ module ActionController #:nodoc:
private
def render_with_a_layout_options(options)
return options unless options.is_a?(Hash)
- case
- when options[:text], options[:partial], options[:nothing], options[:inline]
- # by default, :text, :partial, :inline, and :nothing never use a layout
- { :layout => false }.merge(options)
- else
+ if options.values_at(:text, :file, :template, :inline, :partial, :nothing).compact.empty?
options
+ else
+ { :layout => false }.merge(options)
end
end
@@ -236,7 +234,7 @@ module ActionController #:nodoc:
case options[:layout]
when FalseClass
nil
- when NilClass
+ when NilClass, TrueClass
active_layout if action_has_layout?
else
active_layout(options[:layout])