尝试在rails应用程序

时间:2017-03-19 11:48:18

标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

我已经创建了rails应用,并且我通过ErrorsController制作了动态错误404/500页:

class ErrorsController < ApplicationController
  def not_found
    render status: 404
  end

  def internal_server_error
    render status: 500
  end
end

并将routes.rb更改为:

Rails.application.routes.draw do
  resources :books
  root 'welcome#index'
  match "/404", :to => "errors#not_found", :via => :all
  match "/500", :to => "errors#internal_server_error", :via => :all
end

但每当我运行app时,会出现此错误:

Error during failsafe response: Missing template errors/200 with {:locale=>[:en], :formats=>[:css], :variants=>[], :handlers=>[:raw, :erb, :html, :builder, :ruby, :coffee, :jbuilder]}. 

我只是在浏览器中看到internal_server_error.html.erb 怎么解决这个问题?

2 个答案:

答案 0 :(得分:0)

检查您是否在config / application.rb中注释:

In [120]: df
Out[120]:
   A  B  C  D
A  1  7  5  4
B  1  1  1  1
C  1  0  1  9
D  0  2  3  4

此外,您还需要模板错误/ not_found.html.erb和errors / internal_server_error.html.erb

答案 1 :(得分:0)

此消息表示未找到页面200(无错误或确定)。您的应用程序正在尝试显示状态代码200的错误页面...

我要做的是创建一个errors/200.html.erb并调试输出以查看发生了什么。如您所说,存在内部服务器错误。

你能粘贴你的日志文件(不是全部,只是因为这个错误)?