Python Redis Object Mapper
asyncio based Redis object mapper
Table of content
Installation
TODO
Usage
import asyncio
from dataclasses import field
from typing import Set, Dict
from aio_rom import Model
from aio_rom.fields import Metadata
from aio_rom.session import redis_pool
class Foo(Model):
bar: int
foobar: Set[int] = field(default_factory=set)
my_boolean: bool = False
transient_field: Dict = field(metadata=Metadata(transient=True))
class OtherFoo(Model):
foo: Foo
async def main():
async with redis_pool("redis://localhost"):
foo = Foo(123, {1,2,3}, True)
await foo.save()
...
foo2 = await Foo.get(321)
other_foo = OtherFoo(303, foo2)
await other_foo.save()
asyncio.run(main())
Features
TODO
TODO
- Docs
- Tests
Limitations
configuremust be called before other calls to Redis can succeed, no defaults to localhost atm.- You cannot use
from __future__ import annotationsin the same file you define your models. See https://bugs.python.org/issue39442 - TODO Supported datatypes
- Probably more ...
Release files for aio-rom 0.1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| aio_rom-0.1.7.tar.gz | 16.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| aio_rom-0.1.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 28.5 kB
Release files / aio_rom-0.1.7.tar.gz
| Download URL | aio_rom-0.1.7.tar.gz |
|---|---|
| Size | 16.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a06f371f4378d13aa7163979ff070252d669b566f8e215606f6a28ec94a39bb4
|
|
BLAKE2b-256 checksum How to use checksums |
786afc83f8d97add4cd8f9bb14d5654bd3eb7465456b49713499b1806583002f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|
Release files / aio_rom-0.1.7-py3-none-any.whl
| Download URL | aio_rom-0.1.7-py3-none-any.whl |
|---|---|
| Size | 12.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3d8bdeb2e47d21bfd87106b87f0b98f700f12710623a1e4728353b5e5e2ca117
|
|
BLAKE2b-256 checksum How to use checksums |
c6c908643d6def060302316f194b4d82c895be0398343a70c7771781c4ac0570
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.11.7
|