【问题标题】:Mongoid Error RedirectionMongoid 错误重定向
【发布时间】:2015-03-31 18:37:02
【问题描述】:

我希望能够重定向从 mongoid 的错误引发的输出。我在以下布局中有一些简单的代码:

begin
  [ruby code here to query database]
rescue [Moped Exception here] => e
  puts e.message
end

发生错误时,我以以下格式获取:

Moped::Errors::ConnectionFailure: Could not connect to a primary node for replica set <Moped::Cluster nodes=[<Moped::Node resolved_address=”ipAddress”>, <Moped::Node resolved_address=”ipAddress”>]>

在实际捕获并显示异常之前,会多次显示此错误。我对发生错误的事实没有意见,但我想在上面隐藏错误输出/不显示它,只显示异常。是否有某种方法可以重定向从 ConnectionFailure 错误引发的错误输出。或者一种配置 mongoid 以不显示错误消息的方法(我正在从控制台运行)?任何重定向错误的方法都会有所帮助。

【问题讨论】:

    标签: mongodb redirect mongoid moped


    【解决方案1】:

    mongoid 文档说您不应该尝试从 ConnectionFailure 中进行救援: http://mongoid.org/en/moped/docs/driver.html#errors

    除此之外,你说你不在乎它是否发生。您尝试过什么代码来重定向用户?还有你在用什么(Rails、Sinatra 等)?

    对于 Rails,我通常会执行以下操作:

      if !request.env["HTTP_REFERER"].blank? and request.env["HTTP_REFERER"] != request.env["REQUEST_URI"]
       redirect_to :back
     else
       redirect_to root_path
     end
    

    如果可能(如果已存储),这将尝试将用户发送回他们之前的路径,否则它将把他们带到根目录。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-11
      • 2012-07-04
      • 2023-03-27
      • 2017-12-22
      • 2010-11-18
      • 1970-01-01
      • 2013-09-20
      • 2017-12-04
      相关资源
      最近更新 更多