Spec-Zone.ru › Ruby on Rails 5.0

модуль ActionController::ImplicitRender

Обрабатывает неявное отображение для действия контроллера, которое явно не отвечает с render, respond_to, redirect, или head.

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

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

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

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

В-третьих, если мы НЕ НАХОДИМ шаблон, а запрос — это загрузка страницы в веб-браузере (технически, не-XHR GET запрос для HTML ответа), где вы ожидаете отображения шаблона, то мы вызываем ActionView::UnknownFormat с объяснением.

Наконец, если мы НЕ НАХОДИМ шаблон, и запрос не является загрузкой страницы браузера, то мы неявно отвечаем с 204 Без содержимого.

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

Spec-Zone.ru

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