1

私は ruby​​ 1.9 内で csv ライブラリを使用しており、ここに示すテーブルの例に従おうとしています:

github の faster_csv へのリンク

私のコードは次のとおりです。

<% require 'csv' %>
<% table = CSV.parse("public/assets/file.csv", :headers => true, :header_converters =>   :symbol) %>

 <%= table %>

しかし、上記は、ファイルが表示されることを期待している空白の画面を返します。

また、table[0].fields を表示しようとすると、エラーが発生します

undefined method `fields' for nil:NilClass

ただし、csv ファイルを読み取る場合は、次のように動作します。

<% b = CSV.read("public/assets/khq.csv") %>
<%= b %> 

テーブルの例で間違っていることはありますか?

4

1 に答える 1

2

1.9.2の場合、試してください

CSV.table("public/assets/file.csv")

また

CSV.read("public/assets/file.csv", :headers=>true, :conveters=>:numeric, :header_converters=>:symbol)

参考までに、CSV.parseは文字列用であり、ファイル用ではありません。http://ruby-doc.org/stdlib-1.9.2/libdoc/csv/rdoc/CSV.html#method-c-parseのドキュメントをご覧ください。

于 2012-04-17T18:33:48.193 に答える