当前位置:  开发笔记 > 后端 > 正文

如何在"render:template => ..."之后访问"assign"?

如何解决《如何在"render:template=>"之后访问"assign"?》经验,为你挑选了1个好方法。

我的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.



1> Avdi..:

这很奇怪,我不知道为什么.作为替代方案,您是否尝试将异常作为显式本地传递?

def not_found(exception)
  render :template => '/errors/not_found', 
         :status   => 404, 
         :locals   => {:exception => exception}
end

和观点:

Error 404: Not Found

<%= debug exception %>

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有