Im appena iniziando con Redis con Rails quindi questa forse una domanda stupida.Salvataggio di un HASH a Redis su un'app per rails
Sto cercando di salvare un hash sul server redis ma quando lo recupero è solo una stringa IE.
hash = {"field" => "value", "field2" => "value2"}
$redis.set('data', hash)
#So collecting the data
@data = $redis.get('data')
Questo è ovviamente errato come il suo ritorno come una stringa.
Ho anche provato ad eseguire il ciclo di alcuni risultati e utilizzando il hset ie.
@data.each do |d|
$redis.hset('data', d.field, d.value)
end
# errror
# ERR Operation against a key holding the wrong kind of value
Non so dove andare. Ho cancellato la chiave $ redis.del ('data') per assicurarmi che non fosse questo il problema.
spera che possiate consigliare, Lee
Il poster sembra volere un dict rubino memorizzato come stringa serializzata, ma ottengo lo stesso errore quando si fa hset anche se la chiave è un hash. Qualcuno può indovinare perché potrebbe essere? – arkanciscan
Capito! Non era che stavo facendo un HSET su una stringa, era che stavo facendo un GET su un hash quando avrei dovuto usare HGETALL. – arkanciscan