-1

Ruby コード (Rails ではなく Ruby のみ) を使用して、ループ内で JSON データを作成する必要があります。

以下のコードが正確に必要です。

for i in 0..2
   jsondata = {:aaa => 1.4, :bbb => 0.89, :ccc => 0.6, :ddd => 1.3}
end

final jsondata = [{:aaa => 1.4, :bbb => 0.89, :ccc => 0.6, :ddd => 1.3}, {:aaa => 1.4,
:bbb => 0.89, :ccc => 0.6, :ddd => 1.3}, {:aaa => 1.4, :bbb => 0.89, :ccc => 0.6, :ddd 
=> 1.3}] (3 times loop. Not unique data everytime different data)

最終的なjsondataには、ループで実行されるすべての jsondata が含まれている必要があります最終的なJSONデータです。

4

3 に答える 3

1

これを行うには、Ruby の組み込み JSON ライブラリと配列を使用できます。

require 'json'
entries = []

entries = (0..2).map |i|
  {:aaa => 1.4, :bbb => 0.89, :ccc => 0.6, :ddd => 1.3}
end

p entries
# => [{:aaa=>1.4, :bbb=>0.89, :ccc=>0.6, :ddd=>1.3}, {:aaa=>1.4, :bbb=>0.89, :ccc=>0.6, :ddd=>1.3}, {:aaa=>1.4, :bbb=>0.89, :ccc=>0.6, :ddd=>1.3}]

p entries.to_json
# => "[{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3},{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3},{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3}]"

注: 実際の JSON 文字列ではなく、ハッシュの配列だけが必要な場合は、require 'json'.

于 2013-08-08T13:08:06.137 に答える
1

あなたの質問は少しわかりにくいので、何を達成したいのかわかりませんが、次のようなものがうまくいくはずです:

data = (0..2).map do |i|
  { :a => i, :b => (i+1) }
end
于 2013-08-08T13:08:15.203 に答える
0

質問は正確には明確ではありませんが、これはあなたが尋ねたことを正確に行います:

require 'json'

json_data = 3.times.map { {:aaa => 1.4, :bbb => 0.89, :ccc => 0.6, :ddd => 1.3} }
json_data.to_json

=> "[{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3},{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3},{\"aaa\":1.4,\"bbb\":0.89,\"ccc\":0.6,\"ddd\":1.3}]"
于 2013-08-08T13:08:49.063 に答える