Ruby 2.3.1。
我正在尝试将我的rails应用程序从4.2升级到5.0。到目前为止,我有:
Gemfile
并成功运行bundle update rails
rails app:update
,确保不会覆盖任何自定义更改。ApplicationRecord
基类,让我的所有模型继承自它。现在我正在尝试运行rails db:migrate
并收到此错误:
rails aborted!
TypeError: {:to_prepare=>"use ActiveSupport::Reloader.to_prepare instead", :to_cleanup=>"use ActiveSupport::Reloader.to_complete instead", :prepare!=>"use Rails.application.reloader.prepare! instead", :cleanup!=>"use Rails.application.reloader.reload! instead of cleanup + prepare"} is not a symbol nor a string
my_app/config/environment.rb:6:in `<top (required)>'
bin/rails:4:in `require'
bin/rails:4:in `<main>'
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
以下是enviornment.rb
:
# Load the Rails application.
require_relative 'application'
# Initialize the Rails application.
Rails.application.initialize! # <--- the error happens here
FWIW,运行rails c
会产生相同的错误。
我需要更改以解决此问题?我不确定其他文件有什么用处。如果我可以分享其他任何内容,请告诉我。
我已添加ApplicationRecord
基类,并且我的所有模型都从中继承。资料来源:http://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#active-record-models-now-inherit-from-applicationrecord-by-default
正在运行bundle exec rake db:migrate
会得到与rails db:migrate