在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控制器上何处发送救援?的主要内容,如果未能解决你的问题,请参考以下文章

golang代码片段(摘抄)

在片段之间切换时如何处理相机?

在选项卡式应用程序中的何处放置位置代码?

片段如何处理触摸?

如何处理片段和活动中的后压

如何处理单个活动的多个片段