设计CustomFailure并在路由中挂载,重定向错误

时间:2015-04-01 13:27:17

标签: ruby-on-rails ruby ruby-on-rails-4 devise sidekiq

我正在使用文档(here)中显示的CustomFailure类,以便在有人未经身份验证时重定向到我们的登录页面:

class CustomFailure < Devise::FailureApp
  include Localization

  def redirect_url
    url_for(controller: "/public/sessions", action: :new, locale: locale_to_params(I18n.locale))
  end

  # You need to override respond to eliminate recall
  def respond
    if http_auth?
      http_auth
    else
      redirect
    end
  end
end

因此,这通常会重定向到http://www.acmecorp.com/en/signin,但使用routes.rb中的Sidekiq面板:

  authenticate :user, lambda { |u| u.super_admin? } do
    require "sidekiq/web"
    mount Sidekiq::Web => "/sidekiq"
  end

我被重定向到http://www.acmecorp.com/sidekiq/en/signin而不是http://www.acmecorp.com/en/signin。重定向没有摆脱/sidekiq部分的任何原因?

谢谢!

0 个答案:

没有答案