我正在努力解决我在最近的一个项目中遇到的问题。这是情景:
我正在调用 GoToWebinar API 以获取即将举行的网络研讨会。一切正常,网络研讨会以哈希的形式获取,如下所示:
[
{
"webinarKey":5303085652037254656,
"subject":"Test+Webinar+One",
"description":"Test+Webinar+One+Description",
"times":[{"startTime":"2011-04-26T17:00:00Z","endTime":"2011-04-26T18:00:00Z"}]
},
{
"webinarKey":9068582024170238208,
"name":"Test+Webinar+Two",
"description":"Test Webinar Two Description",
"times":[{"startTime":"2011-04-26T17:00:00Z","endTime":"2011-04-26T18:00:00Z"}]
}
]
我创建了一个 rake 任务,我们将每天运行一次以使用此哈希填充 CSV 文件,然后在控制器操作中读取 CSV 文件以填充视图。
这是我填充 CSV 文件的代码:
g = GoToWebinar::API.new()
@all_webinars = g.get_upcoming_webinars
CSV.open("#{Rails.root.to_s}/public/upcoming_webinars.csv", "wb") do |csv|
@all_webinars.each do |webinar|
webinar.to_a.each {|elem| csv << elem}
end
end
我需要一些帮助来找出一种方法来保存以散列形式接收到的信息以保存在 CSV 文件中,以便保留订单,以及从 CSV 文件中读取回信息的方法它以相同的方式填充控制器操作中的哈希。