Skip to main content

This package simplifies running a Django app on Heroku platform.

Project description

This has been forked from django-heroku because it was abandoned and then renamed to django-on-heroku because old project has been archived.

Current updates:

  • renamed package from django-heroku to django-on-heroku

  • changed psycopg2 to psycopg2-binary so it works and is installable

  • added installation instructions

  • fixed wipe’ing tables in Postgres

  • whitenoise.middleware.WhiteNoiseMiddleware is injected after django.middleware.security.SecurityMiddleware


This is a Django library for Heroku applications that ensures a seamless deployment and development experience.

This library provides:

  • Settings configuration (Static files / WhiteNoise).

  • Logging configuration.

  • Test runner (important for Heroku CI).


Django 2.0 is targeted, but older versions of Django should be compatible. Only Python 3 is supported.

Installation

pip install django-on-heroku

Usage of Django-Heroku

In settings.py, at the very bottom:

# Configure Django App for Heroku.
import django_on_heroku
django_on_heroku.settings(locals())

This will automatically configure DATABASE_URL, ALLOWED_HOSTS, WhiteNoise (for static assets), Logging, and Heroku CI for your application.

Bonus points!

If you set the SECRET_KEY environment variable, it will automatically be used in your Django settings, too!

If you set the CONN_MAX_AGE environment variable, it will automatically be used in your database settings, too!

Disabling Functionality

settings() also accepts keyword arguments that can be passed False as a value, which will disable automatic configuration for their specific areas of responsibility:

  • databases

  • test_runner

  • staticfiles

  • allowed_hosts

  • logging

  • secret_key

  • geodjango

  • db_ssl_required


Geodjango support

To enable the Geodjango support pass the geodjango flag as True when calling settings():

django_heroku.settings(locals(), geodjango=True)

You can also just use this library to provide a test runner for your Django application, for use on Heroku CI:

import django_on_heroku
TEST_RUNNER = 'django_on_heroku.HerokuDiscoverRunner'

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

django-on-heroku-1.1.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

django_on_heroku-1.1-py2.py3-none-any.whl (6.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-on-heroku-1.1.tar.gz.

File metadata

  • Download URL: django-on-heroku-1.1.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for django-on-heroku-1.1.tar.gz
Algorithm Hash digest
SHA256 80d6686ed739184c22f52f10b15ac05bf543211d789aae4efc3ca804d56b3bcb
MD5 f0f9fb2a46cafe5fdabfbdb57775e3f1
BLAKE2b-256 8f6050c88d4ce592a3a8ed49ca79854511fca4b9ec6728eff7e35868affdd88f

See more details on using hashes here.

Provenance

File details

Details for the file django_on_heroku-1.1-py2.py3-none-any.whl.

File metadata

  • Download URL: django_on_heroku-1.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 6.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.8.5

File hashes

Hashes for django_on_heroku-1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 275c98dd90b04c7d4d3f89f5eb8349ecdae786b463181e7449ef7982df4d5684
MD5 e4add544d4afde5e5d348ef39394cae5
BLAKE2b-256 e1a5eebaa17ea62e97145d8d73dc8f179cc5c3901fb8abaad8c90091a93b0664

See more details on using hashes here.

Provenance

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