Skip to main content

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.

Project description

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 >= 2.9.1 and < 2.11 are supported.

pip install redis-limpyd

Note: Version 1.0, 1.0.1 and 1.1 where broken so removed from PyPI

Documentation

See https://redis-limpyd.readthedocs.io/ for a full documentation

Changelog

See CHANGELOG.rst

Maintainers

Extensions

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

redis-limpyd-1.3.1.tar.gz (55.5 kB view details)

Uploaded Source

Built Distribution

redis_limpyd-1.3.1-py2.py3-none-any.whl (60.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file redis-limpyd-1.3.1.tar.gz.

File metadata

  • Download URL: redis-limpyd-1.3.1.tar.gz
  • Upload date:
  • Size: 55.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.2

File hashes

Hashes for redis-limpyd-1.3.1.tar.gz
Algorithm Hash digest
SHA256 049e039e528c6c7cbf9fa122e48138fa69227e17221be07de2415f1d9e9a13f2
MD5 cc8a30d213125882da7fadc7cf416893
BLAKE2b-256 955230c6c34a906cacb8705ed27fb53090232b1432db66e6f301c928f56e726c

See more details on using hashes here.

File details

Details for the file redis_limpyd-1.3.1-py2.py3-none-any.whl.

File metadata

  • Download URL: redis_limpyd-1.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 60.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.4.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.2

File hashes

Hashes for redis_limpyd-1.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 99be66943d9b742a9a7c2eac12af5aa07bbcf0a835b3985dbfbe76d7c79b3226
MD5 940ecce1e56914aac31a16eb85b94b90
BLAKE2b-256 9855f656fbf5353a91ea8814a64f53caf93f39c3fb99c74e519ecada1b075c2c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page