0

フォームのtext_areaから複数の行をインポートするための最良のアプローチは何ですか?

FasterCSVを使用してクイックボッジを試しましたが、NoMethodErrorが発生します。

undefined method `pos' for {"name"=>"Carrots\r\nPeas\r\nRed Onion"}*
  def create
    FasterCSV.parse(params[:ingredient], {:headers => false, :quote_char => '"', :col_sep => ','}).each do |row_data|
          new_record = Ingredient.new('name' => row_data[0])
          new_record.save
      end

最後のものを複数の列を持つモデルに適用したいので、col_sep

4

1 に答える 1

1

単線で使用したい場合はFasterCSV.parse、まず単線を取得する必要があります。

最初に複数行のデータを分割します。

params[:ingredient][:name].split.each do |line|
  FasterCSV.parse(line, { ... options ... }).each do |row_data|
    ... etc ...

parse_line代わりに、1行で作業していることを明示的に伝えるために使用する場合があります。

于 2012-06-18T10:10:41.913 に答える