繁体   English   中英

意外的JSON响应-Ruby on Rails

[英]Unexpected JSON response - Ruby on Rails

我有一个尝试用JSON响应填充的条形图。 我正在使用带有内置JBuilder功能的Rails 5。

这是我的代码:

def graph_data
  @customers = Customer.all
  @graph_data = {graph_type: "Customer Growth"}
  @months = {}
  x = 5
  while x >= 0
    @months[x.months.ago.strftime("%B")] = current_account.customers.where(:created_at => x.months.ago.beginning_of_month..x.months.ago.end_of_month).count
    x = x - 1
  end
  @graph_data[:months] = @months
  puts @graph_data.to_json

end

该行puts @graph_data.to_json输出以下文本:

{"graph_type":"Customer Growth","months":{"November":0,"December":0,"January":0,"February":0,"March":0,"April":3}}

正如我所期望的。

但是,当我在graph_data.json.jbuilder文件中输出实际的JSON响应时,输出为

[["graph_type","Customer Growth"],["months",{"November":0,"December":0,"January":0,"February":0,"March":0,"April":3}]]

我的目标是得到一个看起来更像这样的响应:

{"graph_type":"Customer Growth","months":["November":0,"December":0,"January":0,"February":0,"March":0,"April":3]}

但是我不知道如何用jBuilder完成。

这是我的graph_data.json.jbuilder文件的内容。

json.array! @graph_data

提前致谢。

在您的jbuilder文件中,替换

json.array! @graph_data

json.graph_type @graph_data[:graph_type]
json.months @graph_data[:months]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM