

JSON のレスポンスを以下のように出したいのですが、詰まっております。  
助言いただけないでしょうか。

現在

[code]

    [["book",10],["pen",100]]
    
[/code]

目標

[code]

    [
     {
      category:book
      amount:10
     },
     {
      category:pen
      amount:100
     }
    ]
    
    
[/code]

現状ソース

controller

[code]

    def index
     @category_history = CategoryHistory.all.group(:category).sum(:amount)
    end
    
[/code]

json.buider

[code]

    json.array! @category_history
    
[/code]


CC BY-SA 4.0
2021-07-09T02:25:05.733
78062
2021-07-09T02:53:11.583
2021-07-09T02:43:39.540
3060
34234
question
ruby-on-rails ruby json
集約関数でとってきたハッシュ形式のレスポンスを配列で返す方法について


こちらでどうでしょう？

[code]

    # json.buider
    json.array! @category_history do |ch|
      json.category ch[0]
      json.amount ch[1]
    end
    
[/code]

jbuilderはREADMEに豊富なサンプルが書いてあるので迷ったら眺めてみるとよいです

<https://github.com/rails/jbuilder>


CC BY-SA 4.0
2021-07-09T02:53:11.583
78063
2021-07-09T02:53:11.583
298
78062
answer