Skip to main content

PyPI Version Build Status Doc Status

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

Extensions

Release files for redis-limpyd 2.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for redis-limpyd 2.1.2
File Size Uploaded
redis-limpyd-2.1.2.tar.gz 67.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for redis-limpyd 2.1.2
File Interpreter ABI Platform
redis_limpyd-2.1.2-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 140.4 kB

Release files / redis-limpyd-2.1.2.tar.gz

Download URL redis-limpyd-2.1.2.tar.gz
Size 67.5 kB
Tags Source
SHA-256 checksum
How to use checksums
4cbb15e644b9facfd8ad56bcff16edc262de3e30fbdf210495e0870db41a7924
BLAKE2b-256 checksum
How to use checksums
83991cc06c56b6217c863c3d916cd53821b2b0c00c0840845e9209a0d7b5f1c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.5

Release files / redis_limpyd-2.1.2-py2.py3-none-any.whl

Download URL redis_limpyd-2.1.2-py2.py3-none-any.whl
Size 72.9 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
8169f09eda5960d384480498b4b2d3844d647a6dfa93e951e1b5bf0f0ee75ddc
BLAKE2b-256 checksum
How to use checksums
223dae46cdfc5e35fc06b5724d005a3394c906e324ea53ddcac6fd8003ce2aa7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.5
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page