class ActionView::Renderer
Компонент рендеринга Action View
Это основная точка входа для рендеринга. Он в основном делегирует задачу другим объектам, таким как TemplateRenderer и PartialRenderer, которые фактически отображают шаблон.
Компонент Renderer будет анализировать параметры из метода render или render_body и отображать частичный или шаблонный элемент, в зависимости от параметров. Объекты TemplateRenderer и PartialRenderer являются оболочками, которые выполняют всю настройку и логику, необходимую для рендеринга представления, и новый объект создаётся каждый раз, когда вызывается render.
Атрибуты
Публичные методы класса
# File actionview/lib/action_view/renderer/renderer.rb, line 18 def initialize(lookup_context) @lookup_context = lookup_context end
Публичные методы экземпляра
# File actionview/lib/action_view/renderer/renderer.rb, line 23 def render(context, options) render_to_object(context, options).body end
Основная точка входа рендеринга, используемая Action View и Action Controller.
# File actionview/lib/action_view/renderer/renderer.rb, line 40
def render_body(context, options)
if options.key?(:partial)
[render_partial(context, options)]
else
StreamingTemplateRenderer.new(@lookup_context).render(context, options)
end
end Отображение, но возвращает допустимое тело Rack. Если определены волокна, мы возвращаем потоковое тело, отображающее шаблон по частям.
Обратите внимание, что частичные элементы не поддерживаются для рендеринга с потоковой передачей, поэтому в таких случаях мы просто оборачиваем их в массив.
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.