我在迭代我的JSON数组时遇到了一些麻烦。我想根据客户端发送给服务器的内容设置一个特定的时间表。
客户端的JSON将以这种格式发送:
{
"Schedule":
{
"monday": [
12,
15
]
,
"tuesday": [
10,
16
]
}
}
我想像这样迭代:
params[:Schedule].each do |day| do
day.each do |time|
schedule.add_recurrence_rule(IceCube::Rule.weekly.day(0).hour_of_day(time))
end
end
然而,这不起作用,因为当我打印params[:Schedule].each
时,它打印出星期一,12,15,星期二,10,16等......
有人有解决方案吗?
答案 0 :(得分:5)
params["Schedule"]
获取哈希值,而不是数组。所以你的块将有一个键(作为名称的日子)和一个数组
params["Schedule"].each do |day_name, day_schedule|
# to do
end