Nemůžete to udělat přímo, ale naštěstí existuje nový modul Redis s názvem RedisJSON, který dělá přesně to, co potřebujete, a má také pěknou vazbu Pythonu. Můžete spustit dokovací kontejner RedisJSON nebo použít Redis 4.0+, poté stáhnout/zkompilovat a nainstalovat RedisJSON a nakonfigurovat Redis tak, aby jej načetl, a přidá nativní příkazy pro manipulaci s JSON.
Umožňuje vám ukládat dokumenty JSON v Redis a poté buď načíst nebo upravit konkrétní prvek ve stromu dokumentů, aniž byste museli dokument načítat (nebo dokonce interně analyzovat). Jeho klient Python vám dokonce umožňuje ukládat python diktáty a automaticky je převádět na JSON.
Modul ReJSON:http://redisjon.io
Klient Python:https://pypi.python.org/pypi/rejson
Příklad:
from rejson import Client, Path
rj = Client(host='localhost', port=6379)
# Set the key `obj` to some object
obj = {
'answer': 42,
'arr': [None, True, 3.14],
'truth': {
'coord': 'out there'
}
}
rj.jsonset('obj', Path.rootPath(), obj)
# Get something
print 'Is there anybody... {}?'.format(
rj.jsonget('obj', Path('.truth.coord'))
)