我正在尝试在我的 Rails 应用程序中实现门卫。我的应用程序由 2 个可安装的引擎组成。Api 和 CoreApi。
constraints :subdomain => 'api' do
mount Api::Engine => '/'
end
constraints :subdomain => 'core.api' do
mount CoreApi::Engine => '/'
end
我想在 CoreApi 引擎中使用 Doorkeeper 来使用 OAuth 保护这些端点。我已经在我的 gemspec 中为该引擎包含了 Doorkeeper gem。我还在初始化程序中设置了符号。
CoreApi::Doorkeeper = ::Doorkeeper
一切正常,除非我尝试访问门卫的应用程序索引路径。我跑rake routes
了,CoreApi 引擎的路径列出了所有的门卫路径。问题是
undefined local variable or method `new_oauth_application_path'
它指的是doorkeeper-1.0.0/app/views/doorkeeper/applications/index.html.erb第11行的url助手
我不明白为什么这没有解决。我假设它是因为门卫是一个可安装在轨道上的引擎,我正试图将它安装在一个可安装在轨道上的引擎内。