ruby 1.9.2中的fastercsv错误
我有一个现有的rails应用程序我正在运行ruby 1.9.2和linux它的rails版本
rails 2.3.8
它也有一个GEMFILE,在它的vendor / gems目录下它有’fastercsv-1.5.4’的gem
在其迁移中(在两次迁移中)它需要gem’fastercsv’
require 'fastercsv'
但是,当我这样做
rake db:migrate
它没有通过迁移声明
“请切换到Ruby 1.9的标准CSV库。它是FasterCSV加上对Ruby 1.9的m17n编码引擎的支持。”
我发现消息来自gems’fast_csv.rb’文件。 因为它有条件检查ruby版本
if RUBY_VERSION >= "1.9" class FasterCSV def self.const_missing(*_) raise NotImplementedError, "Please switch to Ruby 1.9's standard CSV " + "library. It's FasterCSV plus support for " + "Ruby 1.9's m17n encoding engine." end def self.method_missing(*_) const_missing end def method_missing(*_) self.class.const_missing end end -- and more code
有人能告诉我如何解决这个问题。 请注意,’fastercsv’尚未添加到GEMFILE中。
您不需要在Ruby 1.9.2中使用FasterCSV gem,因为它已作为标准库的CSV
包含(例如, require 'csv'
)。 只需将应用程序中的引用从FasterCSV
为CSV
并删除vendor/gems/fastercsv
文件夹,它应该只是工作(tm)
我找到了问题的答案
它基于这篇文章
什么是Ruby 1.9标准CSV库?
作为我必须的解决方案
require 'csv'
代替
require 'fastercsv'
并将FasterCSV更改为CSV