Spec-Zone.ru › Ruby on Rails 8.1

module ActionController::ImplicitRender

Неявный рендеринг Action Controller

Обрабатывает неявный рендеринг для действия контроллера, которое явно не отвечает с помощью render, respond_to, redirect или head.

Для контроллеров API неявный ответ всегда имеет вид 204 No Content.

Для всех остальных контроллеров мы используем следующие эвристики, чтобы решить, отобразить шаблон, вызвать ошибку из-за отсутствующего шаблона или ответить с помощью 204 No Content:

Во-первых, если шаблон НАЙДЕН, он отображается. При поиске шаблона учитываются имя действия, локали, формат, вариант, обработчики шаблонов и многое другое (подробности см. в render).

Во-вторых, если шаблон НЕ НАЙДЕН, но для действия контроллера существуют шаблоны для других форматов, вариантов и т. д., мы полагаем, что вы намеревались предоставить шаблон и для этого ответа, и вызываем ActionController::UnknownFormat с пояснением.

В-третьих, если шаблон НЕ НАЙДЕН И запрос представляет собой загрузку страницы в веб-браузере (технически — GET-запрос, не являющийся XHR-запросом, для HTML-ответа), где вы обоснованно ожидаете отображения шаблона, мы вызываем ActionController::MissingExactTemplate с пояснением.

Наконец, если шаблон НЕ НАЙДЕН И запрос не является загрузкой страницы в браузере, мы неявно отвечаем с помощью 204 No Content.

© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

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