Ruby on rails &引用;配置不是模块(TypeError)";安装ShareMeow gem后出错
我一直在跟踪,在我的rails应用程序中安装 在将gem添加到我的gem文件和初始值设定项中的配置变量之后,我遇到了这个错误Ruby on rails &引用;配置不是模块(TypeError)";安装ShareMeow gem后出错,ruby-on-rails,ruby,rubygems,Ruby On Rails,Ruby,Rubygems,我一直在跟踪,在我的rails应用程序中安装 在将gem添加到我的gem文件和初始值设定项中的配置变量之后,我遇到了这个错误 .rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/share_meow_client-0.1.3/lib/helpers/configuration.rb:18:in `<main>': Configuration is not a module (TypeError) .rbenv/versions/2.7.1
.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/share_meow_client-0.1.3/lib/helpers/configuration.rb:18:in
`<main>': Configuration is not a module (TypeError)
.rbenv/versions/2.7.1/lib/ruby/gems/2.7.0/gems/share\u meow\u client-0.1.3/lib/helpers/configuration.rb:18:in
`“:配置不是模块(TypeError)
在谷歌搜索了这个错误后,我怀疑我得到了这个错误,因为我的rails应用程序已经在应用程序的其他地方使用了“Configuration”作为类
有没有关于如何绕过这个问题使用这个宝石的想法?你有几个选择 您可以分叉gem并将
配置
移动到ShareMeowClient::
命名空间中。然后使用fork而不是原始gem,使用gem'share\u meow\u client',github'you/ShareMeowClient'
。您甚至可以将此更改发送到上游
或者,您可以将应用程序中的Configuration
类重命名为其他类(例如AppConfiguration
),这样它就不会与gem中的类冲突
或者,您可以将方法的实现复制到您的应用程序中,而不使用gem。这是我想要的。不管怎么说,gem看起来像是弃置软件,最近一次更新是在5年前。只需几行代码。谢谢!我用第三个选项做了一个快速测试,看起来效果不错。:)您建议将此文件放在哪里?目前,我把它添加到我的Models文件夹中,但我想Lib文件夹可能更适合这个?我不确定。可能是
lib
。或app/services
。