Rails 3配列出力

これはおそらく簡単に解決できる問題ですが、2つのモデルからデータを取得するクエリがあります。このクエリから見たいのは、配列内の平均値(各文字列の最後の数字)だけです。しかし、現在の出力は次のようになります。

{"[\"Orthodontist\", 2011, 4]":"545625.5","[\"Orthodontist\", 2011, 3]":"534927.0","[\"Orthodontist\", 2011, 2]":"524438.5","[\"Orthodontist\", 2011, 1]":"514155.5"}

I want the array to look like this:

[545625.5, 534927.0, 524438.5, 514155.5]

コードは次のようになります。

<%= Quarter.includes(:client).group('clients.specialty', 'quarters.year','quarters.quarter').limit(4)
.order('quarters.created_at DESC').average('quarters.collections').to_json %>

私は何をすべきか?

0

1 答え

Before to_json add values

<%= Quarter.includes(:client).group('clients.specialty', 'quarters.year','quarters.quarter').limit(4)
.order('quarters.created_at DESC').average('quarters.collections').values.to_json %>
1
追加された
float型にしたい場合は、 .values の後に .map(&:to_f)を追加できます。
追加された 著者 rubyprince,
@FattRyan ..あなたのクエリは基本的にハッシュを返します。 .values 配列内のハッシュの値を与える
追加された 著者 rubyprince,
ああ、ありがとう!それは私が必要としたものです。以前は ".values"を使っていませんでした。 "[545625.5"、 "534927.0"、 "524438.5"、 "514155.5"]マークを削除する方法はありますか?
追加された 著者 FattRyan,
固体、おかげで皆!
追加された 著者 FattRyan,