我的ApplicationController中有一个错误处理方法:
rescue_from ActiveRecord::RecordNotFound, :with => :not_found def not_found(exception) @exception = exception render :template => '/errors/not_found', :status => 404 end
在RAILS_ROOT/app/views/errors/not_found.html.erb
,我有这个:
Error 404: Not Found
<%= debug @exception %>
但@exception
总是nil
在那里.我试过了debug assigns
,但总是这样{}
.打电话时不会复制分配render :template
吗?如果是这样,我怎么能得到它们?
我在边缘Rails.
这很奇怪,我不知道为什么.作为替代方案,您是否尝试将异常作为显式本地传递?
def not_found(exception) render :template => '/errors/not_found', :status => 404, :locals => {:exception => exception} end
和观点:
Error 404: Not Found
<%= debug exception %>