在HomePage控制器上何处发送救援?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在HomePage控制器上何处发送救援?相关的知识,希望对你有一定的参考价值。
我有一个主页和一个名为StaticPagescontroller
的控制器。
我使用了救援(如下所示),但页面上的错误显示我这是一个坏主意,或者至少我做错了。主页上的任何问题触发了指向作为主页的root_page的救援,给了我一个阻止一切的无限循环,这是一个坏主意!
什么是最佳做法?
我应该怎么处理主页上的rescue
?
我应该指向404页面吗?别的什么?
class StaticPagesController < ApplicationController
def home
@deals = Deal.featured.to_a
rescue
redirect_to authenticated_root_path
end
答案
发生错误时,我想先记录错误,然后重定向到404页面。
我就是这样做的。
class StaticPagesController < ApplicationController
def home
@deals = Deal.featured.to_a
rescue => error
handle_error(error)
end
end
现在我的ApplicationController看起来像这样
class ApplicationController < ActionController::Base
def handle_error(error)
Error.create(error)
format.html { render :file => "#{Rails.root}/public/404", :layout => false, :status => :not_found }
end
end
一件好事要知道公共目录中的文件在rails服务器启动之前呈现,因此它们仍然可以呈现。
我希望这个对你有用
以上是关于在HomePage控制器上何处发送救援?的主要内容,如果未能解决你的问题,请参考以下文章