如何将Rails 3.0应用程序升级到Rails 3.1?

And*_*rew 9 ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我有一个Rails 3.0应用程序(技术上3.0.7),我想升级到Rails 3.1,以利用新的资产管道和其他花哨的新功能.这样做的最佳方法是什么?我应该使用rails new生成器,然后将旧应用程序中的所有内容复制到新应用程序中吗?那么版本控制呢?我已经有了使用Git的旧应用程序.

For*_* Ye 10

刚刚将我的一个应用程序从3.0.9升级到3.1.0,这是我的方法,您的里程可能会有所不同:

编辑Gemfile,更改Rails gem版本

gem 'rails', '3.1.0'
Run Code Online (Sandbox Code Playgroud)

还添加了3.1.0中引入的新宝石

group :assets do
  gem 'sass-rails', "~> 3.1.0"
  gem 'coffee-rails', "~> 3.1.0"
  gem 'uglifier'
end
gem 'jquery-rails'
Run Code Online (Sandbox Code Playgroud)

bundle update rails

然后运行rake rails:update并解决冲突.

将你的css/javascript/images等移动到app/assets文件夹,确保有一个application.js和一个application.css文件(你可能想看一下新创建的3.1.0项目中的那两个)

像这样在布局文件中包含css/javascript链接

<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
Run Code Online (Sandbox Code Playgroud)

  • 将RVM更新到最新版本可能是个好主意:`rvm get latest`或者如果RVM太旧则再次运行安装脚本,然后更新RubyGems:`gem update --system`,然后更新bundler:` gem install bundler` (2认同)