Skip to main content

Use configuration URLs in your Django Application.

Project description

https://secure.travis-ci.org/julianwachholz/dj-config-url.png?branch=master

This simple Django utility allows you to utilize 12factor inspired environment variables to configure your Django application.

This project has been forked from kennethreitz’ dj-database-url and is fully compatible with it, so you can use this utility as a drop-in replacement.

Supported configuration

Support currently exists for the following database engines: PostgreSQL, PostGIS, MySQL, MySQL (GIS) and SQLite.

You can also configure your CACHES configuration for the backends supported by the Django core: Database, dummy, file based, local memory as well as both Memcached backends.

Installation

Installation is simple:

$ pip install dj-config-url

Usage

Configure your database in settings.py from DATABASE_URL:

DATABASES = {'default': dj_config_url.config()}

Parse an arbitrary Database URL:

DATABASES = {'default': dj_config_url.parse('postgres://...')}

Configure your cache backend:

CACHES = {'default': dj_config_url.parse('memcache://...')}

Use a custom cache backend class:

CACHES = {'default': dj_config_url.parse('memcache://127.0.0.1:123?password=s3cr3t', 'redis_cache.cache.RedisCache')}

Database examples

Engine

Django Backend

URL

PostgreSQL

django.db.backends.postgresql_psycopg2

postgres://USER:PASSWORD@HOST:PORT/NAME

PostGIS

django.contrib.gis.db.backends.postgis

postgis://USER:PASSWORD@HOST:PORT/NAME

MySQL

django.db.backends.mysql

mysql://USER:PASSWORD@HOST:PORT/NAME

MySQL (GIS)

django.contrib.gis.db.backends.mysql

mysqlgis://USER:PASSWORD@HOST:PORT/NAME

SQLite

django.db.backends.sqlite3

sqlite:///PATH [1]

Cache examples

Backend

Django Backend

URL

Database

django.core.cache.backends.db.DatabaseCache

dbcache://table_name

Dummy

django.core.cache.backends.dummy.DummyCache

dummycache://

File based

django.core.cache.backends.filebased.FileBasedCache

filecache:///path/to/cache

Local Memory

django.core.cache.backends.locmem.LocMemCache

locmemcache://[optional name]

Memcached

django.core.cache.backends.memcached.MemcachedCache

memcache://IP:PORT[,IP:PORT, ...]

PyLibMC

django.core.cache.backends.memcached.PyLibMCCache

pymemcache://IP:PORT[,IP:PORT, ...]

You may specify options for the cache backends as query parameters in the url, e.g.:

CACHES = {
    'default': dj_config_url.parse('filecache:///var/tmp/django_cache?timeout=60&max_entries=1000&cull_frequency=2'),
}

This will be equivalent of writing this in your settings.py:

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',
        'LOCATION': '/var/tmp/django_cache',
        'TIMEOUT': 60,
        'OPTIONS': {
            'MAX_ENTRIES': 1000,
            'CULL_FREQUENCY': 2,
        }
    }
}

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

dj-config-url-0.1.1.tar.gz (4.4 kB view details)

Uploaded Source

Built Distribution

dj_config_url-0.1.1-py2.py3-none-any.whl (7.1 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file dj-config-url-0.1.1.tar.gz.

File metadata

File hashes

Hashes for dj-config-url-0.1.1.tar.gz
Algorithm Hash digest
SHA256 32b87c85f6359a6a772bd8d5e131640529c4addfc2069918f4eaa8de8ecbb548
MD5 a84ab53e4185e47a095f026d4cdcce3f
BLAKE2b-256 d7bea19b45afb8a624b2b3258672fb3e97c1620e5e18d5c0a64ca8886f1825e6

See more details on using hashes here.

File details

Details for the file dj_config_url-0.1.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for dj_config_url-0.1.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8c411dca3ead2b64786c9ae735ef3085518ff92a79e98e441953b26c47063e3f
MD5 d1c01a8590f57725d9567353a424efec
BLAKE2b-256 863f2c30720784ce280cd5f332a5bba0d568d4620285d5daf654df04b80c0fce

See more details on using hashes here.

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