Ruby on rails Rails json响应。整数转换为日期
我有一个问题,json中的响应数据。 下面是一个代码:Ruby on rails Rails json响应。整数转换为日期,ruby-on-rails,ruby,datetime,Ruby On Rails,Ruby,Datetime,我有一个问题,json中的响应数据。 下面是一个代码: @data [ actions_by_type.each do |action| [ action[:date].to_i, action[:activity] ] end ] respond_to do |format| format.json { render :json => @data } end 但回应是:
@data [
actions_by_type.each do |action|
[ action[:date].to_i, action[:activity] ]
end
]
respond_to do |format|
format.json { render :json => @data }
end
但回应是:
...{"date":"2013-04-29T20:20:00Z","activity":"87"}...
为什么rails将我的int-time转换为字符串datetime?
x。每个返回x
,因此:
x = actions_by_type.each do |action|
[ action[:date].to_i, action[:activity] ]
end
相当于:
x = actions_by_type
您想使用映射
而不是每个
:
@data = actions_by_type.map do |action|
[ action[:date].to_i, action[:activity] ]
end
x.each
返回x
,因此:
x = actions_by_type.each do |action|
[ action[:date].to_i, action[:activity] ]
end
相当于:
x = actions_by_type
您想使用映射
而不是每个
:
@data = actions_by_type.map do |action|
[ action[:date].to_i, action[:activity] ]
end
您应该使用.map
而不是.each
@data = actions_by_type.map do |action|
[ action[:date].to_i, action[:activity] ]
end
respond_to do |format|
format.json { render :json => @data }
end
使用.each
时,@data
的结果将是类型的操作,而不是新数组。您应该使用.map
而不是。each
@data = actions_by_type.map do |action|
[ action[:date].to_i, action[:activity] ]
end
respond_to do |format|
format.json { render :json => @data }
end
使用。每个@data
的结果将是操作,而不是新数组