[英]fastercsv error with ruby 1.9.2
我有一個現有的rails應用程序我在ruby 1.9.2和linux上運行它的rails版本
rails 2.3.8
它也有一個GEMFILE,在它的vendor / gems目錄下它有'fastercsv-1.5.4'的寶石
在其遷移中(在兩次遷移中)它需要寶石'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)
我找到了問題的答案
它基於這篇文章
作為我必須的解決方案
require 'csv'
代替
require 'fastercsv'
並將FasterCSV更改為CSV
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.