我正在尝试将rails应用程序从3.1.3迁移到3.1.10
我在gemfile和run bundle update rails
尽管gemfile几乎为空,但我有以下错误:
Bundler找不到gem“multi_json”的兼容版本:In 的Gemfile: uglifier(> = 1.0.3)ruby依赖于 multi_json(〜> 1.3)ruby
rails (= 3.1.10) ruby depends on multi_json (1.2.0)
这是我的gemfile:
source 'http://rubygems.org'
gem 'rails', '3.1.10'
# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'
gem 'sqlite3'
gem 'rails_admin'
gem 'devise'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
end
gem 'sass-rails', '3.1.5'
gem 'jquery-rails'
gem 'therubyracer'
# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'
# Use unicorn as the web server
# gem 'unicorn'
# Deploy with Capistrano
gem 'capistrano'
# To use debugger
# gem 'ruby-debug19', :require => 'ruby-debug'
#gem for images
gem 'paperclip'
默认情况下,Uglifier是一个宝石,如何通过rails 3.1.3添加的宝石需要一个3.1.10需要的更新的宝石(1.2.0)!
我如何迁移?
答案 0 :(得分:0)
创建一个新项目。然后编辑新的gem文件以反映新的rails版本。将旧的gem文件的内容复制到除rails之外的新文件。执行捆绑安装。将旧项目复制到新项目中。捆绑它并再次执行rake db:migrate。
希望这有帮助。