Как визуализировать рельсы статические 404, 500 страниц ошибок без макета сайта?

Я использую рельсы 3. В производстве рельсы прекрасно обрабатывают исключения и загружают мои статические файлы 404.html, 500.html и т.д. из моего общего каталога. Однако он загружает эти файлы в файл layouts/application.html.erb. Я ищу способ инструктировать рельсы для загрузки этих файлов БЕЗ использования моего макета приложения - например. просто используйте статический html файл и ничего больше. Каков наилучший способ сделать это?

спасибо!

Ответы

Ответ 1

render :file => 'public/404.html', :status => :not_found, :layout => false

Ответ 2

Для расширенного подхода, работающего в рамках Rails. Обновите файл routes:

get "/404", to: "errors#error_404"
get "/500", to: "errors#error_500"

Добавьте ErrorsController с помощью:

layout false

def error_404
  render status: 404
end

def error_500
  render status: 500
end

Затем в app/views/errors/ добавьте ваши файлы error_404.erb и error_500.erb вместе с snazy image и панель поиска.

Дополнительная информация здесь.