mirror of
https://github.com/kennethreitz/django-heroku.git
synced 2026-06-16 21:10:57 +00:00
51 lines
1.6 KiB
ReStructuredText
51 lines
1.6 KiB
ReStructuredText
Django-Heroku (Python Library)
|
|
==============================
|
|
|
|
.. image:: https://travis-ci.org/heroku/django-heroku.svg?branch=master
|
|
:target: https://travis-ci.org/heroku/django-heroku
|
|
|
|
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 <https://www.heroku.com/continuous-integration>`_).
|
|
|
|
--------------
|
|
|
|
Django 2.0 is targeted, but older versions of Django should be compatible. Only Python 3 is supported.
|
|
|
|
Usage of Django-Heroku
|
|
----------------------
|
|
|
|
In ``settings.py``, at the very bottom::
|
|
|
|
…
|
|
# Configure Django App for Heroku.
|
|
import django_heroku
|
|
django_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!
|
|
|
|
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``
|
|
|
|
-----------------------
|
|
|
|
You can also just use this library to provide a test runner for your Django application, for use on Heroku CI::
|
|
|
|
import django_heroku
|
|
TEST_RUNNER = 'django_heroku.HerokuDiscoverRunner'
|