Welcome to redis-limpyd’s documentation!¶
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
Source code: https://github.com/limpyd/redis-limpyd
Show me some 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']
Contents¶
- About
- Database
- Models
- Fields
- Collections
- Advanced
- Changelog
- Release 2.1.2 -
2020-05-05
- Release v2.1.1 -
2020-05-03
- Release v2.1 -
2019-11-14
- Release v2.0.1 -
2019-10-11
- Release v2 -
2019-10-11
- Release v1.3.1 -
2019-10-11
- Release v1.3 -
2019-09-22
- Release v1.2 -
2018-01-31
- Release v1.1 -
2018-01-30
- Release v1.0.1 -
2018-01-30
- Release v1.0 -
2018-01-29
- Release v0.2.4 -
2015-12-16
- Release v0.2.3 -
2015-12-16
- Release v0.2.2 -
2015-06-12
- Release v0.2.1 -
2015-01-12
- Release v0.2.0 -
2014-09-07
- Release v0.1.3 -
2013-09-07
- Release v0.1.2 -
2013-08-30
- Release v0.1.1 -
2013-08-26
- Release v0.1.0 -
2013-02-12
- Release 2.1.2 -