项目停止降级的Rails版本
问题描述:
开始工作后我使用的轨道版本5.1.1,但是当我把它降级到4.2.7,然后它开始给我下面的错误:项目停止降级的Rails版本
`method_missing': undefined method `load_defaults'
每当我尝试运行“轨道的”它显示在终端上面的错误,它只是一个新的项目,我只是通过使用安装一个新的项目“轨新”,后来我改变在宝石文件中的轨道版本
gem 'rails', '~> 4.2.7'
然后在我尝试点击“rails s”时,这样做后就开始给我这个错误。
任何想法为什么会发生这种情况? 5.1.1版本生成
答
Rails应用程序包括该行:
# in config/application.rb:12
config.load_defaults 5.1
load_defaults
是在导轨5引入并在导轨4.2.x版
这就是说不存在的方法,你不能只降级Rails版本(顺便说一句,你通常不能只升级)。您需要将您的应用程序更改为其他Rails版本所期望的结构。 RailsDiff是一个很好的资源,可以看到使用不同版本的Rails生成的应用程序之间的差异。
你有两个选择:
- 采用版本或
- 之间的变化重新生成与所需版本的新应用。
根据[RailsDiff](http://railsdiff.org/4.2.7/5.1.1)版本'4.2.7'和'5.1.1'中新鲜的Rails应用程序的结构和文件完全不同内容。你为什么期望用最新版本生成的应用程序可以运行几乎一年的版本? – spickermann
只需重新生成应用程序。 –
我不知道这是怎么回事...呃问题有2 upvotes。 – mudasobwa