【发布时间】:2018-04-30 22:18:02
【问题描述】:
我有一个条形图,我试图用 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
提前致谢。
【问题讨论】:
标签: ruby-on-rails json ruby-on-rails-5