ruby-on-rails - 我在 ruby​​ 1.8.7 上有一个新的 Rails 3 应用程序,迁移到 1.9 有何影响?

标签 ruby-on-rails ruby

我是 Rails 新手,我从 Rails 3 和 ruby​​ 1.8.7 开始

我不确定为什么我选择 1.8.7,但我认为这是因为 1.9 不支持许多 gem。

我的分析是错误的吗?我可以升级到 1.9 吗? 迁移到 1.9 需要考虑哪些事项? Rails 3 准备好了吗?

最佳答案

大约两个月前我已经迁移到 1.9.2,到目前为止一切似乎都正常。 1.9 很大程度上向后兼容,因此大多数事情都不是问题。

也就是说,在升级到 1.9 时,有两个可能的严重烦恼来源:

  • CSV 解析。 Ruby 在内部切换到 FasterCSV,但执行 require 'fastercsv' 将导致错误。如果您正在进行任何 CSV 解析,则需要更改您的代码。
  • 编码更改。如果您的代码(而不是数据)包含非 ASCII 字符,您的应用程序将会崩溃。修复并不难,您必须将神奇的注释#encoding: utf-8放在任何此类文件的顶部,但这又是一个可能的痛苦来源。

我使用过的所有 gem 都工作正常(除了那些执行 CSV 的)。

关于ruby-on-rails - 我在 ruby​​ 1.8.7 上有一个新的 Rails 3 应用程序,迁移到 1.9 有何影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5724545/

相关文章:

ruby-on-rails - ActiveRecord 序列化将 nil 发送到自定义序列化程序以获取当前属性

ruby - 查找并返回嵌套数组中最长的数组及其大小

ruby-on-rails - OS X 上的 RSpec 加载时间令人难以置信的长

ruby - 如何调用模型中的重定向方法

html - 使用 Nokogiri 解析 HTML 并获取最接近 "<div>"的文本

javascript - 视差不适用于 Rails

ruby-on-rails - rbenv:在同一台机器上并排安装 32 位和 64 位版本的 ruby

ruby-on-rails - 在 Rails 应用程序中重新定义 $stdout 和 $stderr 的副作用

ruby - 将 radix-2 数字字符串数组写入 Ruby 中的二进制文件

ruby-on-rails - 使用 Netsuite Ruby Gem 获取事务时出错 - Savon::SOAPFault: (soapenv:Server.userException)