0

[1,2,3,4]で IDのコレクションを取得paramsし、対応する ID の配列を返す API を呼び出します。例["Apple","Orange","Mango"]。対応する ID のデータベースでこれを更新するにはどうすればよいですか?

例:ids上記は私のユーザーテーブルからのものです。ids = [1,2,3,4]、これは私のユーザー テーブルの主キーです。

fruit_namesAPI 応答から、相関関係の配列を取得しましたuser_ids。例: ids = [1,2,3,4]and fruit_names = ["a","b","c","d"]fruit_name列がユーザー テーブルに存在する場合。ユーザー テーブルでfruit_name関連付けられた API 応答から更新するにはどうすればよいですか?ids

4

2 に答える 2

1

これeach_with_indexには、と組み合わせて使用​​できます。update

ids.each_with_index do |id, index|
  User.update(id, :fruit_name, fruit_names[index])
end

上記のコードは、次のことを前提としています。

ids = [1,2,3,4]
fruit_names = ["a","b","c","d"]

これらの配列のインデックスが一致すること。

idsこれにより、配列内の各アイテムに対してクエリが実行されることに注意してください。配列が非常に大きい場合、idsこれはうまく機能しません。

于 2013-07-17T07:57:06.203 に答える