Skip to main content

django-flyio

PyPI - Version PyPI - Python Version


A set of simple utilities for Django apps running on Fly.io.

Note: This package is designed to work with V2 Apps. It has not been tested with V1 Apps.

Installation

pip install django-flyio

Usage

Multi-Region Fly Postgres

  1. Set your DATABASES settings to call get_db_config from django_flyio.db.

    This function reads the PRIMARY_REGION and FLY_REGION environment variables to determine the Fly region the primary database is in and the Fly region the app is currently running in.

  2. Add django_flyio.routers.FlyDBReplicaRouter to your DATABASE_ROUTERS settings.

    This router reads whether the DATABASES setting has a replica key and, if so, routes reads to the replica database.

# settings.py
from django_flyio.db import get_db_config

DATABASES = get_db_config()

DATABASE_ROUTERS = ["django_flyio.routers.FlyDBReplicaRouter"]

Middleware

To set the Fly-Server header containing the Fly server and region that served the request, add django_flyio.middleware.FlyResponseMiddleware to your MIDDLEWARE settings.

# settings.py
MIDDLEWARE = [
    # ...
    'django_flyio.middleware.FlyResponseMiddleware',
]

License

django-flyio is distributed under the terms of the MIT license.

Metadata

Release files for django-flyio 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-flyio 0.1.1
File Size Uploaded
django_flyio-0.1.1.tar.gz 8.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for django-flyio 0.1.1
File Interpreter ABI Platform
django_flyio-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 14.0 kB

Release files / django_flyio-0.1.1.tar.gz

Download URL django_flyio-0.1.1.tar.gz
Size 8.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f779a1dbc6071c913923cc89d887267ec1b77d03197779f69829a648db0de29f
BLAKE2b-256 checksum
How to use checksums
59f2823795ed51348ac29d37403e129af08eb25a005455ef46aefd92b1067fe8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.24.0

Release files / django_flyio-0.1.1-py3-none-any.whl

Download URL django_flyio-0.1.1-py3-none-any.whl
Size 5.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0ad00e1752cc1b19896fae027a60224cbbe49ee4bbbfaee3583a357f59c15715
BLAKE2b-256 checksum
How to use checksums
e82d3f36f91320b985ba387008d5961c4f522995f4cc28b4d2f28f66cdcda4cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-httpx/0.24.0

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page