aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/context.rb
blob: 710cdc613de8c51d1cf128ae643347073c3f20d4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
module ActionView
  module CompiledTemplates #:nodoc:
    # holds compiled template code
  end

  # = Action View Context
  #
  # Action View contexts are supplied to Action Controller to render template.
  # The default Action View context is ActionView::Base.
  #
  # In order to work with ActionController, a Context must implement:
  #
  # Context#render_partial[options]
  #   - responsible for setting options[:_template]
  #   - Returns String with the rendered partial
  #   options<Hash>:: see _render_partial in ActionView::Base
  # Context#render_template[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 Action View context can also mix in Action View'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, :view_renderer, :view_flow
  end
end