Spec-Zone.ru › Ruby on Rails 7.1

class ActionView::Renderer

Родитель:
Объект

Компонент рендеринга Action View

Это основная точка входа для рендеринга. Он в основном делегирует задачу другим объектам, таким как TemplateRenderer и PartialRenderer, которые фактически отображают шаблон.

Компонент Renderer будет анализировать параметры из метода render или render_body и отображать частичный или шаблонный элемент, в зависимости от параметров. Объекты TemplateRenderer и PartialRenderer являются оболочками, которые выполняют всю настройку и логику, необходимую для рендеринга представления, и новый объект создаётся каждый раз, когда вызывается render.

Атрибуты

lookup_context[RW]

Публичные методы класса

new(lookup_context) Показать исходный код
# File actionview/lib/action_view/renderer/renderer.rb, line 18
def initialize(lookup_context)
  @lookup_context = lookup_context
end

Публичные методы экземпляра

render(context, options) Показать исходный код
# 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.

render_body(context, options) Показать исходный код
# 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API