我正在使用ruby 2.5.1。我确实使用HKEYS将密钥存储在redis中,并使用HSCAN过滤了密钥。如果密钥已经存在,我需要修改HKEYS。
如果使用Ruby on Rails在redis中存在,如何更新HKEYS字段?
答案 0 :(得分:1)
您可以使用ruby代码完成此操作,但认为使用HKEYS不是一个好主意
require 'redis'
redis = Redis.new
redis.hset('hash_name', 'key' , 'new_value')if redis.hexists('hash_name','key')
或使用扫描
curser , result = redis.hscan 'hash_name'
k,val = result.find{ |arr| arr.first == 'k'}
redis.hset('hash_name', 'key' , 'new_value') if k
# you will need to loop until curser be 0
似乎效率低下,但可以正常工作