我有一个提供的网址,每30分钟更新一次数据,并想知道我是否可以在更新时将数据保存到我的数据库中?我使用的是Rails 4.2.0。
共有10个网址,每个网址都有不同的单元号,需要参考才能为每个单元调用每个数据。
网址结构
http://sitename/cgi-bin/site=1
JSON结构
{"status"=>"ok", "data"=>[{"2014-08-11 11:00:00"=>14.9},{"2014-08-11 11:30:00"=>15.1}]}
答案 0 :(得分:2)
通过json响应,可以使用以下内容完成:
json = JSON.parse('{"status"=>"ok", "data"=>[{"2014-08-11 11:00:00"=>14.9},{"2014-08-11 11:30:00"=>15.1}]}') #string representing your json
json['data'].each do |element|
element.each do |key, value|
Model.create(date: key, number: value) # This Model is the name of your model
end
end
如果你让我建议你,你可以发送json作为:
{"status"=>"ok", "data"=>[{"date" => "2014-08-11 11:00:00", "number" =>14.9},{...}]}
因此,您可以访问以下数据:element['date']
和element['number']
答案 1 :(得分:0)
我认为你应该去做一些非凡的工作。请参阅此Whenever gem,它为编写和部署cron作业提供了清晰的语法,您可以每隔30分钟将数据保存到数据库中。