0 purchases
redislimpyd 2.1.2
Limpyd
Limpyd provides an easy way to store objects in Redis, without losing the power and the control of the Redis API, in a limpid way, with just as abstraction as needed.
Featuring:
Don’t care about keys, limpyd do it for you
Retrieve objects from some of their attributes
Retrieve objects collection
CRUD abstraction
Powerful indexing and filtering
Keep the power of all the Redis data types in your own code
Example of configuration:
from limpyd import model
main_database = model.RedisDatabase(
host="localhost",
port=6379,
db=0
)
class Bike(model.RedisModel):
database = main_database
name = model.InstanceHashField(indexable=True, unique=True)
color = model.InstanceHashField()
wheels = model.StringField(default=2)
So you can use it like this:
>>> mountainbike = Bike(name="mountainbike")
>>> mountainbike.wheels.get()
'2'
>>> mountainbike.wheels.incr()
>>> mountainbike.wheels.get()
'3'
>>> mountainbike.name.set("tricycle")
>>> tricycle = Bike.collection(name="tricycle")[0]
>>> tricycle.wheels.get()
'3'
>>> tricycle.hmset(color="blue")
True
>>> tricycle.hmget('color')
['blue']
>>> tricycle.hmget('color', 'name')
['blue', 'tricycle']
>>> tricycle.color.hget()
'blue'
>>> tricycle.color.hset('yellow')
True
>>> tricycle.hmget('color')
['yellow']
Install
Python versions 2.7 and 3.5 to 3.8 are supported (CPython and PyPy).
Redis-py versions >= 3 are supported, with redis-server versions >= 3.
pip install redis-limpyd
For Redis-py versions < 3, please use limpyd version 1.3.1 (or later in 1.x versions)
Documentation
See https://redis-limpyd.readthedocs.io/ for a full documentation
Changelog
See CHANGELOG.rst
Maintainers
Stéphane «Twidi» Angel
Yohan Boniface
Extensions
A bundle of great extensions: Limpyd-extensions
A queue/task/job manager: Limpyd-jobs
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.