覆盖Oauth2Controller的rails_api_auth在生产模式下引发错误

时间:2018-06-23 20:40:26

标签: ruby-on-rails api authentication

我正在构建一个小型管理应用程序,我想在其中添加预检以供用户登录系统。我正在使用rails_api_auth宝石。我试图覆盖其 Oauth2Controller ,它正在开发环境中工作,但在生产环境中却出现错误。

错误:

app/controllers/session_controller.rb:19:in `<top (required)>': uninitialized constant RailsApiAuth::Oauth2Controller (NameError)

覆盖的控制器:

class SessionController < RailsApiAuth::Oauth2Controller
  def create
    user = User.find_by_username(params[:username])
    if user && user[:admin]
       # do something
    else
      super
    end
  end
end

这里有什么我想念的吗?

1 个答案:

答案 0 :(得分:0)

SO answer是解决方案吗?

如原始作者所述,Rails 5在正式投入生产后会禁用自动加载。

如上所述,更改以下内部应用程序配置文件->

    # config/application.rb

    config.enable_dependency_loading = true
    config.autoload_paths << Rails.root.join('lib')