A modern data mapper library built on Pydantic
Project description
AnyModel – Data Mapper for Python
anymodel is a data mapper for python built on top pydantic providing a flexible storage layer.
Write Plain Old Pydantic Objects, describe how the data are mapped to which storage (or storage combination) and let
anymodel do the rest.
Migrations are automatic. Patch your models and we'll diff your storage to apply the schema changes. This is a dangerous operation that we may disable as a default in the future, but for now, we move fast and break things.
THIS SOFTWARE IS STILL IN DEVELOPMENT, EXPECT BREAKING CHANGES AND BUGS. IT MAY BREAK YOUR DATA COMPLETELY, SO DON'T USE IT UNLESS YOU KNOW WHAT YOU ARE DOING.
Reqs
We want to work with "popo" entities (here, plain old pydantic objects). We should be able to sync them back and forth with nunderlying storages, but the storage implementation should not be tied to business objects.
Migrations should be automatic, yet not dangerous. Removed fields / tables should require an explicit confirmation from the user, yet adding a field should be transparent.
We should be able to work with multiple storages at the same time, and even have a single entity mapped to multiple storages, with a main/secondary logic (for example, an sql storage may be responsible for the key management, and store the name, and a lucene index may store other things).
We should be able to manage lazy relations, and even lazy fields from secondary storages.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file anymodel-0.1.0.tar.gz.
File metadata
- Download URL: anymodel-0.1.0.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.23
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3c41db3f4bdebf3bd74e95d7a189f00a7230ea449acb45e21317bfc8aa1038aa
|
|
| MD5 |
687d44d7d28958805525202be2ed9f2e
|
|
| BLAKE2b-256 |
276266342f5393c9e70f98f15a9d716d78850f4ec4ade38b2dfb6b3eccadea19
|
File details
Details for the file anymodel-0.1.0-py3-none-any.whl.
File metadata
- Download URL: anymodel-0.1.0-py3-none-any.whl
- Upload date:
- Size: 17.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.23
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
53ef254ba2f3cb94c894c68801ea890bbfd0042b775cc3c3c59580b3c8fe249a
|
|
| MD5 |
1c2dc9c47e4c514b3bae538c0542f71d
|
|
| BLAKE2b-256 |
2ff668c71118c46512ffe80da5025addeba3c6a77eeca28987068d0e7d133ef6
|