2011-04-04 42 views
1

我碰到下面的錯誤與在CSV(Rails3中,紅寶石1.9.2p0,Ubuntu的)中產生CSV錯號碼參數錯誤

錯誤 - 錯號碼arguements的(0 1)

請你能幫我解決這個問題嗎?

我在此代碼中使用它:

csv_data = CSV.generate do |csv| 
    csv << [ 
    "S_No", 
    "User ID", 
    "Password" 
    ] 

    @password_array.each do |password| 
    csv << [ 
    @user_name, 
    @user_id, 
    @password] 
    end 

end 

我然後在發送郵件作爲附件:

UserMailer.export_csv(file_name,csv_data).deliver 
+1

發佈導致錯誤的代碼並解釋您要完成什麼。以目前的形式回答這個問題是不可能的。 – 2011-04-04 17:21:22

+0

csv_data = CSV.generate do | csv | CSV << [ 「S_NO」, 「用戶ID」, 「密碼」 ] @ password_array.each做|密碼| CSV << [ @user_name, @user_id, @password] 端 端 – lamrin 2011-04-04 17:24:30

+0

和IAM在郵件發送此csv_data作爲附件 – lamrin 2011-04-04 17:26:27

回答

4

您需要將選項傳遞給CSV.generate。如果你不關心任何選項,傳遞一個emtpy哈希:

CSV.generate({}) { |csv| ... }

+0

許多非常感謝答案 – lamrin 2011-04-04 17:42:41

+1

空的散列是不必要的。 [這是默認設置](http://ruby-doc.org/stdlib/libdoc/csv/rdoc/classes/CSV.html#M000182)。 – steenslag 2011-04-04 19:34:08

+3

傳遞空哈希後我仍然得到錯誤TypeError(不能將哈希轉換爲字符串) – lamrin 2011-04-05 04:00:56

0

我遇到相同問題上與Fedora15的(紅寶石1.8.7)。 下面的代碼修復了CSV.generate問題。

if RUBY_VERSION < "1.9" 
require "rubygems" 
require "faster_csv" 
CSV = FCSV 
else 
require "csv" 
end