diff options
-rw-r--r-- | actionpack/CHANGELOG | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/filters.rb | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/layout.rb | 10 |
3 files changed, 9 insertions, 5 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index d233a67d78..fc00517cea 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Replace dubious controller parent class in filter docs. #3655, #3722 [info@rhalff.com, eigentone@gmail.com] + * Don't interpret the :value option on text_area as an html attribute. Set the text_area's value. #3752 [gabriel@gironda.org] * Fix remote_form_for creates a non-ajax form. [Rick Olson] diff --git a/actionpack/lib/action_controller/filters.rb b/actionpack/lib/action_controller/filters.rb index 0149d52303..9bfe3ee1da 100644 --- a/actionpack/lib/action_controller/filters.rb +++ b/actionpack/lib/action_controller/filters.rb @@ -141,7 +141,7 @@ module ActionController #:nodoc: # # will run the :authenticate filter # end # - # class SignupController < ActionController::Base + # class SignupController < ApplicationController # # will not run the :authenticate filter # skip_before_filter :authenticate # end diff --git a/actionpack/lib/action_controller/layout.rb b/actionpack/lib/action_controller/layout.rb index f2a5b97bf1..0934b8bfdc 100644 --- a/actionpack/lib/action_controller/layout.rb +++ b/actionpack/lib/action_controller/layout.rb @@ -66,9 +66,11 @@ module ActionController #:nodoc: # <tt>app/views/layouts/weblog.rhtml</tt> or <tt>app/views/layouts/weblog.rxml</tt> exists then it will be automatically set as # the layout for your WeblogController. You can create a layout with the name <tt>application.rhtml</tt> or <tt>application.rxml</tt> # and this will be set as the default controller if there is no layout with the same name as the current controller and there is - # no layout explicitly assigned with the +layout+ method. Setting a layout explicitly will always override the automatic behaviour - # for the controller where the layout is set. Explicitly setting the layout in a parent class, though, will not override the - # child class's layout assignement if the child class has a layout with the same name. + # no layout explicitly assigned with the +layout+ method. Nested controllers use the same folder structure for automatic layout. + # assignment. So an Admin::WeblogController will look for a template named <tt>app/views/layouts/admin/weblog.rhtml</tt>. + # Setting a layout explicitly will always override the automatic behaviour for the controller where the layout is set. + # Explicitly setting the layout in a parent class, though, will not override the child class's layout assignement if the child + # class has a layout with the same name. # # == Inheritance for layouts # @@ -175,7 +177,7 @@ module ActionController #:nodoc: def inherited_with_layout(child) inherited_without_layout(child) child.send :include, Reloadable - layout_match = child.name.underscore.sub(/_controller$/, '') + layout_match = child.name.underscore.sub(/_controller$/, '').sub(/^controllers\//, '') child.layout(layout_match) unless layout_list.grep(%r{layouts/#{layout_match}\.[a-z][0-9a-z]*$}).empty? end |