如何在轨道上的ruby中将数据库中的Json响应存储起来

时间:2016-12-17 07:20:06

标签: ruby-on-rails json ruby

如何将我从api获取的json响应存储到我的数据库中。 这就是我想要做的 来自API的回应:

[
  {
    "tag_id": "1",
    "tag_name": "FCC",
    "group_id": "15",
    "object_type_id": "0"
  },
  {
    "tag_id": "2",
    "tag_name": "SWA Buyers",
    "group_id": "15",
    "object_type_id": "0"
  },
  {
    "tag_id": "3",
    "tag_name": "SWA Nonbuyers",
    "group_id": "15",
    "object_type_id": "0"
  }
]

现在我想将所有信息存储在我的表格中

2 个答案:

答案 0 :(得分:1)

你有很多选择。

  1. 将此JSON存储为字符串(在文本列中)。这显然不会让您对数据进行任何查询。你只能把它作为一个整体阅读。

  2. 解析响应并在数据库中创建单独的Tag记录。

  3. 如果您的数据库支持它(例如postgresql),请将其存储在特殊的json列中。这是前两个选项的中间部分:您可以获得一些查询功能并且易于保存。

答案 1 :(得分:0)

你可以这样做:

  • 您要向表中添加一个列,您希望将该数据示例“info”列保存到学生表中,这是文本类型
  • 在学生模型中,您添加以下行:

    serialize :info, Hash