1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00
rails--rails/actionpack/lib/action_view/context.rb

44 lines
1.5 KiB
Ruby
Raw Normal View History

module ActionView
module CompiledTemplates #:nodoc:
# holds compiled template code
end
# ActionView contexts are supplied to ActionController
# to render template. The default ActionView context
# is ActionView::Base.
#
# In order to work with ActionController, a Context
# must implement:
#
# Context.for_controller[controller] Create a new ActionView instance for a
# controller
# Context#_render_partial_from_controller[options]
# - responsible for setting options[:_template]
# - Returns String with the rendered partial
# options<Hash>:: see _render_partial in ActionView::Base
# Context#_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
#
# An ActionView context can also mix in ActionView's
# helpers. In order to mix in helpers, a context must
# implement:
#
# Context#controller
# - Returns an instance of AbstractController
#
# In any case, a context must mix in ActionView::Context,
# which stores compiled template and provides the output
# buffer.
module Context
include CompiledTemplates
attr_accessor :output_buffer
def convert_to_model(object)
object.respond_to?(:to_model) ? object.to_model : object
end
end
end