ormar-postgres-extensions is a an extension to theOrmar ORM. It enables developers to write models that map to native PostgreSQL types.
Ormar is an amazing async ORM that works with FastAPI. However, it is agnostic to the underlying database used meaning that we cannot use native PostgreSQL types such as UUID or JSONB columns. The aim of this library is to provide Ormar fields that can be used to generate database columns with native PG types.
python -m pip install ormar-postgres-extensions
Two native PG fields are provided. The JSONB
and UUID
types map to native JSONB
and UUID
data types respectively. Using these in an Ormar model is as simple as importing the fields and using them in the model.
from uuid import UUID
import ormar
from ormar_postgres_extensions import PostgresUUID
class MyModel(ormar.Model):
uid: UUID = PostgresUUID(unique=True, nullable=False)
pip uninstall ormar-postgres-extensions
Feel free to open a PR or GitHub issue. Contributions welcome!
To develop locally, clone this repository and run . script/bootstrap
to install test dependencies. You can then use invoke --list
to see available commands.
To run the tests locally, PostgreSQL needs to be running. This can be easily started via inv database
.
See contributing guide
You don't really have to add this section yourself! Simply use all-contributors by adding comments in your PRs like so:
Evert Timberg 🤔 🚇 🚧 📖 |
@all-contributors please add <username> for <contribution type>
Find out more about All-Contributors on their website!
ormar-postgres-extensions
is licensed under Apache License Version 2.0.