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.tar.gz (55.8 kB view details)

Uploaded Source

Built Distribution

redis_limpyd-1.3-py2.py3-none-any.whl (60.4 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

  • Download URL: redis-limpyd-1.3.tar.gz
  • Upload date:
  • Size: 55.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.0b4

File hashes

Hashes for redis-limpyd-1.3.tar.gz
Algorithm Hash digest
SHA256 1d2b56bf86a9e43a46a40b1c1635aae0bded7881371092a462130c4f3ba144ed
MD5 36c13c5ec6d15328dad408bd940c57b4
BLAKE2b-256 f83a40552a7e15c87fa60d656c32c52ac811c836a8b886858a119f9bd478bc28

See more details on using hashes here.

File details

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

File metadata

  • Download URL: redis_limpyd-1.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 60.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.8.0b4

File hashes

Hashes for redis_limpyd-1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 93207679a30d164d49e6f381e32b231c6560d1606413887a9ad4c40a65f7c4e6
MD5 aabfcf2777af463e2c8f3974cb952f86
BLAKE2b-256 e6649351dae376a0df5cdc5fbddc87d77666172455748e90b7d1bb0599a0e657

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