跳至内容 跳至搜索

Action View Context

Action View 上下文提供给 Action Controller 用于渲染模板。默认的 Action View 上下文是 ActionView::Base

为了与 Action Controller 协同工作,一个 Context 必须包含此模块。上下文使用的变量(@output_buffer、@view_flow 和 @virtual_path)的初始化是包含此模块的对象的责任(尽管你可以调用下面定义的 _prepare_context)。

方法
#

属性

[读写] output_buffer
[读写] view_flow

实例公共方法

_layout_for(name = nil)

封装了与视图流的交互,以便在 yield 时返回正确的缓冲区。这通常由助手覆盖以添加更多行为。

# File actionview/lib/action_view/context.rb, line 27
def _layout_for(name = nil)
  name ||= :layout
  view_flow.get(name).html_safe
end

_prepare_context()

通过设置适当的实例变量来准备上下文。

# File actionview/lib/action_view/context.rb, line 18
def _prepare_context
  @view_flow     = OutputFlow.new
  @output_buffer = ActionView::OutputBuffer.new
  @virtual_path  = nil
end