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.