gpt4 book ai didi

ruby-on-rails - 未定义方法 `sub' 为 nil :NilClass when calling bundle exec db operations

转载 作者:太空宇宙 更新时间:2023-11-03 18:21:15 26 4
gpt4 key购买 nike

我收到以下错误:

undefined method `sub' for nil:NilClass
/Users/jdrm/.rvm/gems/ruby-2.0.0-p247/gems/activerecord-3.2.13/lib/active_record/connection_adapters/abstract/connection_specification.rb:68:in `connection_url_to_hash'

当我尝试对任何 Rails 项目运行 bundle exec db 操作时,例如:

bundle exec rake db:migrate

我的操作系统是 Mac OS X 10.8.4,我使用 RVM 安装了 ruby​​,并且已经尝试过以下版本:

ruby-1.9.3-p448 [ x86_64 ]
ruby-2.0.0-p0 [ x86_64 ]
ruby-2.0.0-p247 [ x86_64 ]

还尝试使用 rails 3.13 和 3.14。

我很感激任何关于这个问题的建议。

最佳答案

connection_specification.rb中的相关代码:

      spec = { :adapter  => adapter,
:username => config.user,
:password => config.password,
:port => config.port,
=> :database => config.path.sub(%r{^/},""),
:host => config.host }

发生错误是因为您的适配器没有数据库路径条目。但是,如果您遵循此处引导的逻辑,此方法会将 URI 转换为配置对象。可能不是您想要的。

那么为什么会这样呢?最可能的原因是没有找到正确的配置。检查您的环境中 RAILS_ENV 的值(如果有),以及是否存在匹配的配置。

关于ruby-on-rails - 未定义方法 `sub' 为 nil :NilClass when calling bundle exec db operations,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18110766/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com