RedisORM is just a quick and simple little Key-Value group to Python Object mapper that makes it easier to have somewhat more complex structures in Redis. While a similar structure could be achieved by using a Redis hash, this module also allows for lists and future support for Redis data structures is hopefully planed, making this more helpful than basic hashs.
There is a small test suite provided. It requires an actual Redis install that is up and running. If you want too change the address then please take a look in the test directory. The tests are automatically ran each commit, thanks to travis-ci.org and coverage is provided by Coveralls.io and this documentation is kindly hosted and automatically rebuilt by readthedocs.org.
If you find this project helpful and would like to make a small donation, I'm available on Gittip:
A Few Minor Warnings
- This is a very early release, and although I've been using a large part of this code for about a year now, things are still going to break and not function well. Don't be afraid to submit a bug report or a patch on Github to fix something.
- I'm only a second year university student, and software isn't even my major; I'm working towards an Electrical and Computer Engineering degree, so not only do I have limited time to keep this maintained, but I also probably won't write the best code ever.
- This project follows the semantic versioning specs. All Minor and patch versions will not break the major versions API, however a bump of the major version signifies that backwards compatibility will most likely be broken in some way.
.. automodule:: redisORM.redis_model
All code for this can be found online at github. If something is broken, or a feature is missing, please submit a pull request or open an issue. Most things I probably won't have time to get around to looking at too deeply, so if you want it fixed, a pull request is the way to go. In your pull request please provide an explanation as to what your request is for, and what benefit it provides. Also, please try to match the style of the code, or make sure your code is nearly all PEP8 compliant just to maintain code consistency.
Besides that, this project is licensed under the MIT License as found in the
LICENSE.txt file. Enjoy!
This library will only raise a subclass of :py:class:`.RedisORMException` if it encounters a problem.
.. autoclass:: redisORM.redis_model.RedisORMException
Besides :py:class:`.RedisORMException`, this Model class should be the only other class you need to use in this library. It acts as a simple dict style object which will back all its data in Redis.
.. autoclass:: redisORM.redis_model.RedisModel :members: :undoc-members:
These classes help make :py:class:`.RedisModel` function smoothly and allow for the easy addition of new Redis data structures. Most of the time you should have a need for these classes, although admittedly, the :py:class:`.RedisList` does come in handy once in a while for a list like object that backs its data in an actual Redis list.
.. autoclass:: redisORM.redis_model.RedisList :members: :undoc-members:
.. autoclass:: redisORM.redis_model.RedisKeys :members: :undoc-members: