Ruby on Rails从Ruby 1.8.7 Rails 2.3.15迁移到Ruby 2和Rails 4

时间:2013-12-17 09:03:27

标签: ruby ruby-on-rails-4 ruby-2.0

任何人都可以从Ruby 1.8.7和Rails 2.3.15迁移到Ruby 2和Rails 4的优点和缺点,我也想了解处理它的过程

2 个答案:

答案 0 :(得分:4)

将Rails 2.0迁移到Rails 4.0并不容易。 Rails版本2.0到3.0中有很多变化,比如引入Gemfile和删除插件。因此,在从Rails 2.0迁移到Rails 4.0时,您需要将供应商/插件下的所有插件替换为gem(找到与插件对应的gem)。可能是一些不适用于Rails 4.0的插件。在这种情况下,您需要将其替换为另一个。所有其他插件代码都需要修改。

因此,首先将Rails 2.0迁移到Rails 3.0,将Rails 3迁移到Rails 4. Rails有很多变化,从2.0到3.0。你可以在这里检查Rails强制转换:

http://railscasts.com/episodes/225-upgrading-to-rails-3-part-1

http://railscasts.com/episodes/226-upgrading-to-rails-3-part-2

从Rails 3.0到4.0,您可以轻松迁移,而不是从Rails 2.0迁移到3.0。然后你还必须更新所有与Rails 4.0兼容的Gems版本,并在需要时更改代码。在模型中的Rails 4.0范围语法,Rails find_by_name方法,在路由匹配语句等中,您必须用新的替换。你可以在这里看到Railscast:

http://railscasts.com/episodes/415-upgrading-to-rails-4

http://railscasts.com/episodes/400-what-s-new-in-rails-4?view=comments

答案 1 :(得分:1)

rails 2.X和3.0中有太多变化。如果你能够做所有的配置,你可以.. !!我们最近迁移了一个项目。但请确保按照Abhilash解释的方式进行版本迁移。

225-upgrading-to-rails-3-part-1

226-upgrading-to-rails-3-part-2

226-upgrading-to-rails-3-part-2

415-upgrading-to-rails-4

以下是功能列表。!!,您需要注意。

(1)介绍bundler(管理gem依赖关系的新方法)

(2)Gemfile和Gemfile.lock(所有你的gem依赖所在,而不是environment.rb)

(3)config /文件夹中的新.rb文件,名为application.rb  (其中包含以前environment.rb的所有内容)

(4)SQL结构的变化:Model.where(:activated => true)

(5)所有邮件程序脚本现在都在app / mailers文件夹中, 早些时候我们保留在应用程序/模型中。

(6)Rails3-UJS支持。对于作为AJAX工作的链接和表单, 我们写道:remote =>而不是编写复杂的代码行。真的

(7)HTML 5支持。

(8)基于模型的验证语法的变化:validates:name,:presence =>真的

(9)能够将Windows / ruby​​ / jruby /开发/生产特定宝石安装到Gemfile。

group :production do 
  gem 'will_paginate' 
end

All the Best。!