0

誰かが次のCSV解析の問題についてアドバイスできますか?

CSV:

Robert,Lobos,lobs@email.com
Klein,Kleinerer,kln@gmail.com
Gross,Grosserer,gr@grosserer.de

方法:

def upload
  if (params[:contactList])

    csv_content = params[:contactList].read
    @recipients = {}
    CSV.parse(csv_content) do |row|
      @recipients[row[0]] = {'forename' => row[0], 'surname' => row[1], 'email' => row[2]}
    end

    render 'index'
  end
end

ターゲットは、テンプレートの値を次のようにレンダリングすることです。

<% @recipients.each do |recipient| %>
  <option value="test"><%= recipient['forename'] %> <%= recipient['surname'] %> (<%= recipient['email'] %>)</option>
<% end %>

現在、次のようにスローします。

文字列を整数に変換できません

上記を達成するための最良の方法/クイックフィックスは何ですか?

4

1 に答える 1

1

ブロックでハッシュを反復するために、ハッシュエントリのkeyandがブロックに提供されます。value

<% @recipients.each do |recipient| %>

する必要があります

<% @recipients.each do |key, recipient| %>
于 2012-12-03T14:19:52.547 に答える