Skip to main content

PostgreSQL specific extensions to the Ormar ORM

Project description

ormar-postgres-extensions

All Contributors

Maturity badge - level 1 Stage Discord

Pypi Wheel PyPI - Python Version PyPI - Downloads PyPI - License

Build Status codecov

Overview

ormar-postgres-extensions is a an extension to theOrmar ORM. It enables developers to write models that map to native PostgreSQL types.

Motivation

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.

Installation

python -m pip install ormar-postgres-extensions

Usage

Fields

Two native PG fields are provided. The PostgresJSONB and PostgresUUID 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)

Uninstalling

pip uninstall ormar-postgres-extensions

Contributing

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

Contributors

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!

License

ormar-postgres-extensions is licensed under Apache License Version 2.0.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ormar-postgres-extensions-1.0.0.tar.gz (23.7 kB view hashes)

Uploaded Source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page