任何人都可以从Ruby 1.8.7和Rails 2.3.15迁移到Ruby 2和Rails 4的优点和缺点,我也想了解处理它的过程
答案 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
以下是功能列表。!!,您需要注意。
(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。!