【问题标题】:db:migrate doesn't look like it can load part og my rake filedb:migrate 看起来它不能加载我的 rake 文件的一部分
【发布时间】:2019-12-27 07:07:06
【问题描述】:

我正在尝试运行 bundle exec db:migrate 但遇到加载错误:

rake aborted!
LoadError: cannot load such file -- sinatra/activerecord/rake/activerecord_6

我很确定这一定是配置错误,因为实际代码来自训练营并且在他们的环境下工作。

我尝试跟踪 rakefile、db 迁移脚本和 evniroment.rb 中提到的文件位置,以确保我没有移动一些重要的东西。

这是尝试run bundle exec db:migrate时的完整错误

rake aborted!
LoadError: cannot load such file -- sinatra/activerecord/rake/activerecord_6
/home/ryan/.rvm/gems/ruby-2.6.3/gems/sinatra-activerecord-2.0.13/lib/sinatra/activerecord/rake.rb:2:in `require'
/home/ryan/.rvm/gems/ruby-2.6.3/gems/sinatra-activerecord-2.0.13/lib/sinatra/activerecord/rake.rb:2:in `<top (required)>'
/home/ryan/projects/finstagram2/finstagram-master/Rakefile:2:in `require'
/home/ryan/projects/finstagram2/finstagram-master/Rakefile:2:in `<top (required)>'
/home/ryan/.rvm/gems/ruby-2.6.3/gems/rake-12.3.3/exe/rake:27:in `<top (required)>'
/home/ryan/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `eval'
/home/ryan/.rvm/gems/ruby-2.6.3/bin/ruby_executable_hooks:24:in `<main>'
(See full trace by running task with --trace)

【问题讨论】:

  • sinatra-activerecord 需要修补才能与activerecord 6.x.x 一起使用。github.com/janko/sinatra-activerecord/pull/87 需要合并,并且需要在此错误消失之前发布 gem。如果你真的想让它在这里和现在工作,请将 rails gem 版本设置为低于 6.0.0

标签: rake dbmigrate sinatra-activerecord


【解决方案1】:

有同样的问题。显然不适用于 activerecord 6,因此将 gemfile 中的版本更新为上一个版本。

gem 'activerecord', '~> 5.0', :require => 'active_record'

然后运行: 捆绑更新活动记录

【讨论】:

    【解决方案2】:

    删除您的 gemfile.lock,然后运行 ​​bundle install。那应该可以解决错误。我遇到了同样的错误,这种方法为我解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-10
      • 2014-04-30
      • 2015-02-20
      相关资源
      最近更新 更多