【问题标题】:Rails 5.2: No such middleware to insert before: "Warden::Manager"Rails 5.2:之前没有要插入的中间件:“Warden::Manager”
【发布时间】:2017-12-10 17:38:30
【问题描述】:

我在尝试为升级到 Rails 5.2 beta2 的应用运行本地 Rails 服务器时收到此错误:

gems/actionpack-5.2.0.beta2/lib/action_dispatch/middleware/stack.rb:108:in `assert_index':之前没有要插入的中间件:“Warden::Manager”(RuntimeError)

我正在使用设计。

更新: 错误与 Devise on Rails 5.2 的公寓 gem 有关。 initializers/apartment.rb 中的这一行

Rails.application.config.middleware.insert_before 'Warden::Manager', 'Apartment::Elevators::Subdomain'

似乎有关系。它适用于 Rails 4.10

【问题讨论】:

    标签: devise ruby-on-rails-5 apartment-gem


    【解决方案1】:

    已通过更改类名字符串以引用公寓初始化程序中的实际类来解决此问题:

    Rails.application.config.middleware.use Apartment::Elevators::Subdomain
    Rails.application.config.middleware.insert_before Warden::Manager, Apartment::Elevators::Subdomain
    

    【讨论】:

      猜你喜欢
      • 2013-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-20
      • 1970-01-01
      相关资源
      最近更新 更多