如何在Ruby for Redis中获取字符串数据的字段?

iqjalb3h  于 2022-10-31  发布在  Redis
关注(0)|答案(1)|浏览(357)

我在Redis中有一个名为table1的数据集,如下所示:

[
  {
    "column-name1": "10.1.10.1",
    "column-name2": "range(100,200)",
    "column-name3": "nam3"
  },
  {
    "column-name1": "2.2.2.2",
    "column-name2": "",
    "column-name3": "range(1024,+inf)"
  },
  {
    "column-name1": "1.1.1.1",
    "column-name2": "",
    "column-name3": "nam3"
  }
]

我想得到table1的值..我该怎么做?
我如何在ruby中解析table1以获得它的值?

zmeyuzjn

zmeyuzjn1#

首先,你需要从Redis中存储的字符串中解析json数据。在Ruby中解析json,你可以做如下操作:

require "redis"
require "json"

red = Redis.new(host: "127.0.0.1", port: 6379, db: 1) <-- connect to redis

table1 = red.get("table1") <-- get table1 value (stringified data)
table1_json = JSON.parse(table1) <-- parse value to get a JSON object

现在你有了一个json对象形式的table1数据,你可以迭代它的元素并得到你想要的值:

for key in table1_json
    puts(key["column-name1"])
end

相关问题