A set of simple utilities for Django apps running on Fly.io
Project description
django-flyio
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
-
Set your
DATABASESsettings to callget_db_configfromdjango_flyio.db.This function reads the
PRIMARY_REGIONandFLY_REGIONenvironment variables to determine the Fly region the primary database is in and the Fly region the app is currently running in. -
Add
django_flyio.routers.FlyDBReplicaRouterto yourDATABASE_ROUTERSsettings.This router reads whether the
DATABASESsetting has areplicakey 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.
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 django_flyio-0.1.1.tar.gz.
File metadata
- Download URL: django_flyio-0.1.1.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f779a1dbc6071c913923cc89d887267ec1b77d03197779f69829a648db0de29f
|
|
| MD5 |
6e2fcc402d25837134d6fa842ea53720
|
|
| BLAKE2b-256 |
59f2823795ed51348ac29d37403e129af08eb25a005455ef46aefd92b1067fe8
|
File details
Details for the file django_flyio-0.1.1-py3-none-any.whl.
File metadata
- Download URL: django_flyio-0.1.1-py3-none-any.whl
- Upload date:
- Size: 5.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.24.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ad00e1752cc1b19896fae027a60224cbbe49ee4bbbfaee3583a357f59c15715
|
|
| MD5 |
fc08d18dfbe5fcb85b4127677f2c2ff0
|
|
| BLAKE2b-256 |
e82d3f36f91320b985ba387008d5961c4f522995f4cc28b4d2f28f66cdcda4cf
|