🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more

redis-limpyd

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

redis-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.

2.1.2
Maintainers
2

|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 <http://redis.io/topics/data-types>_ in your own code

Example of configuration:

.. code:: python

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:

.. code:: python

>>> 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.

.. code:: bash

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 <CHANGELOG.rst>_

Maintainers

  • Stéphane «Twidi» Angel <https://github.com/twidi/>_
  • Yohan Boniface <https://github.com/yohanboniface/>_

Extensions

  • A bundle of great extensions: Limpyd-extensions <https://github.com/limpyd/redis-limpyd-extensions>_
  • A queue/task/job manager: Limpyd-jobs <https://github.com/limpyd/redis-limpyd-jobs>_

.. |PyPI Version| image:: https://img.shields.io/pypi/v/redis-limpyd.png :target: https://pypi.python.org/pypi/redis-limpyd .. |Build Status| image:: https://travis-ci.org/limpyd/redis-limpyd.png?branch=master :target: https://travis-ci.org/limpyd/redis-limpyd .. |Doc Status| image:: https://readthedocs.org/projects/redis-limpyd/badge/ :target: http://redis-limpyd.readthedocs.io/en/latest/ .. _Redis: http://redis.io .. _Redis-py: https://github.com/andymccurdy/redis-py

Keywords

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts