diff options
author | Yehuda Katz <wycats@gmail.com> | 2009-07-19 21:53:02 +0900 |
---|---|---|
committer | Yehuda Katz <wycats@gmail.com> | 2009-07-19 21:53:02 +0900 |
commit | bb530923bcd5c643f9bfca8e36cd3fa36365032d (patch) | |
tree | e5d821e7f13334a64a3936d0a484bbcd8667552f /actionpack/lib/action_controller/abstract | |
parent | 1a2946a6d9b1dbcf3a4c77654693d73f9b11bde1 (diff) | |
download | rails-bb530923bcd5c643f9bfca8e36cd3fa36365032d.tar.gz rails-bb530923bcd5c643f9bfca8e36cd3fa36365032d.tar.bz2 rails-bb530923bcd5c643f9bfca8e36cd3fa36365032d.zip |
Simplify required "ActionView compliant" API
Diffstat (limited to 'actionpack/lib/action_controller/abstract')
-rw-r--r-- | actionpack/lib/action_controller/abstract/helpers.rb | 6 | ||||
-rw-r--r-- | actionpack/lib/action_controller/abstract/renderer.rb | 19 |
2 files changed, 8 insertions, 17 deletions
diff --git a/actionpack/lib/action_controller/abstract/helpers.rb b/actionpack/lib/action_controller/abstract/helpers.rb index 6b73f887c1..5efa37fde3 100644 --- a/actionpack/lib/action_controller/abstract/helpers.rb +++ b/actionpack/lib/action_controller/abstract/helpers.rb @@ -8,12 +8,6 @@ module AbstractController extlib_inheritable_accessor(:_helpers) { Module.new } end - # Override AbstractController::Renderer's _action_view to include the - # helper module for this class into its helpers module. - def _action_view - @_action_view ||= super.tap { |av| av.helpers.include(_helpers) } - end - module ClassMethods # When a class is inherited, wrap its helper module in a new module. # This ensures that the parent class's module can be changed diff --git a/actionpack/lib/action_controller/abstract/renderer.rb b/actionpack/lib/action_controller/abstract/renderer.rb index 611d3a16ce..41b7d47458 100644 --- a/actionpack/lib/action_controller/abstract/renderer.rb +++ b/actionpack/lib/action_controller/abstract/renderer.rb @@ -17,25 +17,22 @@ module AbstractController # An instance of a view class. The default view class is ActionView::Base # # The view class must have the following methods: - # initialize[paths, assigns_for_first_render, controller] - # paths<Array[ViewPath]>:: A list of resolvers to look for templates in - # controller<AbstractController::Base> A controller - # _render_partial_from_controller[options] + # View.for_controller[controller] Create a new ActionView instance for a + # controller + # View#_render_partial_from_controller[options] + # - responsible for setting options[:_template] + # - Returns String with the rendered partial # options<Hash>:: see _render_partial in ActionView::Base - # _render_template_from_controller[template, layout, options, partial] + # View#_render_template_from_controller[template, layout, options, partial] + # - Returns String with the rendered template # template<ActionView::Template>:: The template to render # layout<ActionView::Template>:: The layout to render around the template # options<Hash>:: See _render_template_with_layout in ActionView::Base # partial<Boolean>:: Whether or not the template to render is a partial - # _partial:: If a partial, rather than a template, was rendered, return - # the partial. - # helpers:: A module containing the helpers to be used in the view. This - # module should respond_to include. - # controller:: The controller that initialized the ActionView # # Override this method in a to change the default behavior. def _action_view - @_action_view ||= ActionView::Base.new(self.class.view_paths, {}, self) + @_action_view ||= ActionView::Base.for_controller(self) end # Mostly abstracts the fact that calling render twice is a DoubleRenderError. |