我正在实现一个使用 Omniauth 连接到 API 的客户端 Web 应用程序,按照此处的说明进行操作
我在嵌套模块中定义了一个类/lib/omniauth/strategies/testservice.rb
module OmniAuth:: Strategies
class Testservice < OmniAuth::Strategies::OAuth2
option :name, :testservice
end
end
当我在 Rails 控制台中调用以下内容时:
require File.expand_path('lib/omniauth/strategies/testservice', Rails.root)
它会失败。
但是,如果我将类的名称缩短Testservice
为一个单词,例如Test
,那么它可以工作。
我怀疑我的类名与 Rails 命名约定冲突。由于 Omniauth gem 的一些限制,我无法将类名创建为 TestService。
我该如何克服这个问题?