ruby URI中未初始化的类变量@@schemes

sg24os4d  于 2023-05-28  发布在  Ruby
关注(0)|答案(2)|浏览(390)

我正在尝试迁移模式,但在执行此操作时显示以下日志:

$ rails db:migrate
rails aborted!
NameError: uninitialized class variable @@schemes in URI
Did you mean?  scheme_list
D:/Projects/lms-2021/config/application.rb:3:in `require'
D:/Projects/lms-2021/config/application.rb:3:in `<top (required)>'
D:/Projects/lms-2021/Rakefile:4:in `require_relative'
D:/Projects/lms-2021/Rakefile:4:in `<top (required)>'
bin/rails:9:in `require'
bin/rails:9:in `<main>'
(See full trace by running task with --trace)

如何解决这个问题?

  • Windows 10专业版
  • git bash terminal
  • rails v 5.1.7
  • ruby v3.1.2
o75abkj4

o75abkj41#

基于这条评论,安装或更新gem 'globalid'对我来说很有效。
添加gem 'globalid', '~> 1.0',然后运行bundle install

jljoyd4f

jljoyd4f2#

如果您能分享您正在运行的迁移代码以及URI的代码,那就太好了。显然,URI中的类变量@@schemes没有初始化。
你可以使用(或equals)初始化它||我的天
例如,如果@@schemes是一个数组,你可以这样做:

@@schemes ||= []

相关问题