1

csv ファイルを 3 つの異なる配列に解析しました。各列は配列です。arr1 は「name」列、arr2 は「email」列、arr3 は「ID」列です。

JSON を受け入れる API にポスト リクエストを送信しようとしています。各行 (つまり、arr1[0]、arr2[0]、および arr3[0]) を同時に投稿して、それらがすべて 1 つの連絡先に関連付けられるようにする必要があります。その後、追加するレコードがなくなるまで、リクエストはループし続けます。私がこれまでに持っているコードは以下の通りです:

         uri= HTTParty.post("https://www.surveys.com/api/v2/add-contact",
    :basic_auth => auth,
    :headers => { 'ContentType' => 'application/json' },
    :body => {
      "name" => arr1[0],
      "email" => arr2[0],
      "id" => arr3[0]
    }
  )

これは 1 つの連絡先を作成するために機能しますが、連絡先をループする方法については空白を描いています。arr1.each ステートメントを作成することもできますが、それでは email フィールド (arr2) と id フィールド (arr3) が除外されます。3 つ以上の配列をループするにはどうすればよいですか?

助けてくれてありがとう。

4

1 に答える 1

0

データを確認しないと断定はできませんが、3 つの列に解析するのではなく、データを行のままにしておくことをお勧めします。各連絡先が行のように聞こえるからです。

これは、CSV ファイル内の連絡先または任意のレコードの一般的な形式です。CSV を使用してファイルを読み取ると、レコードを含む配列を取得できます。各行のデータでヘッダーを使用しないように CSV に指示すると、配列の配列が得られます。

to_jsonその時点で、レコードの配列全体に適用することにより、各連絡先の情報をまとめて送信することが簡単になります。

于 2013-07-26T04:02:25.190 に答える