如何在Rails中将json存储到数据库

时间:2018-06-24 09:16:26

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4

有URl要自动将json数据存储到数据库

站点提供此代码,但使用Java

 <script>
var str = "";
for(var i = 1 ;i<=100;i++){
 str = "00"+i;

$("#a_b"+str).mouseover(function() {
  $("#a_p"+str).show();
  $("#a_bor"+str).show();
}).mouseout(function() {
  $("#a_p"+str).hide();
  $("#a_bor"+str).hide();
});
}
</script>

此json示例

enter image description here

名为 speed 的模型包含HttpResponse response = Unirest.get("https://xproject.restdb.io/rest/data") .header("x-apikey", "42ba8a6dc7532aa8319a58310281665e394e4") .header("cache-control", "no-cache") .asString(); 和ID
需要保存speedgps_speed_kph = speed

2 个答案:

答案 0 :(得分:1)

您可以使用JSONB列。这可以帮助您根据列中的键更新单个数据组。

参考:

1)enter image description here

2)http://edgeguides.rubyonrails.org/active_record_postgresql.html#json-and-jsonb

答案 1 :(得分:0)

首先,您必须按照here的说明,将db column的数据类型指定为hash in的{​​{1}}。

然后,您必须将model作为哈希保存在数据库json中:

(json to hash )

要进行转换,您可以执行以下操作require 'json' value = '{"val":"test","val1":"test1","val2":"test2"}' myhash = JSON.parse(value) Model.create(hash_column_name: myhash)

(hash to json)