提交 f5b8fc03 编写于 作者: R Rick Olson

Allow layouts with extension of .html.erb. Closes #8032 [Josh Knowles]

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6516 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
上级 d699084f
*SVN*
* Allow layouts with extension of .html.erb. Closes #8032 [Josh Knowles]
* Change default respond_to templates for xml and rjs formats. [Rick]
* Default xml template goes from #{action_name}.rxml => #{action_name}.xml.builder.
......
......@@ -190,7 +190,7 @@ def layout_list #:nodoc:
def inherited_with_layout(child)
inherited_without_layout(child)
layout_match = child.name.underscore.sub(/_controller$/, '').sub(/^controllers\//, '')
child.layout(layout_match) unless child.layout_list.grep(%r{layouts/#{layout_match}\.[a-z][0-9a-z]*$}).empty?
child.layout(layout_match) unless child.layout_list.grep(%r{layouts/#{layout_match}(\.[a-z][0-9a-z]*)+$}).empty?
end
def add_layout_conditions(conditions)
......
......@@ -28,6 +28,9 @@ module ControllerNameSpace
class ControllerNameSpace::NestedController < LayoutTest
end
class MultipleExtensions < LayoutTest
end
class MabView
def initialize(view)
end
......@@ -72,6 +75,13 @@ def test_namespaced_controllers_auto_detect_layouts
assert_equal 'layouts/controller_name_space/nested', @controller.active_layout
assert_equal 'controller_name_space/nested.rhtml hello.rhtml', @response.body
end
def test_namespaced_controllers_auto_detect_layouts
@controller = MultipleExtensions.new
get :hello
assert_equal 'layouts/multiple_extensions', @controller.active_layout
assert_equal 'multiple_extensions.html.erb hello.rhtml', @response.body.strip
end
end
class ExemptFromLayoutTest < Test::Unit::TestCase
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册