Django settings.py
Op deze pagina:
Wat staat er in settings.py?
De meeste instellingen staan standaard al goed ingesteld, die hoef je niet aan te passen.
DEBUG
DEBUG = True (alleen tijdens ontwikkeling)
ALLOWED_HOSTS
ALLOWED_HOSTS = [] (domeinnaam/ip-adres) Dit moet ingesteld worden als je DEBUG op False zet. Met DEBUG op True en ALLOWED_HOSTS leeg, wordt de host gevalideerd met ['.localhost', '127.0.0.1', '[::1]'].
INSTALLED_APPS
INSTALLED_APPS = [...] (hier kun je een eigen app aan toevoegen)
MIDDLEWARE
MIDDLEWARE = [...] (zorgt voor de beveiliging)
DATABASES
DATABASES = DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": "mydatabase",
}
}
Voorbeeld voor PostgreSQL:
DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql",
"NAME": "mydatabase",
"USER": "mydatabaseuser",
"PASSWORD": "mypassword",
"HOST": "127.0.0.1",
"PORT": "5432",
}
}
ROOT_URLCONF
ROOT_URLCONF
TEMPLATES
TEMPLATES
WSGI_APPLICATION
WSGI_APPLICATION
AUTH_PASSWORD_VALIDATORS
AUTH_PASSWORD_VALIDATORS
LANGUAGE_CODE
LANGUAGE_CODE = 'en_us' ? 'nl'
TIME_ZONE
TIME_ZONE = 'UTC'
USE_I18N
USE_I18N = True
USE_TZ
USE_TZ = True
STATIC_URL
STATIC_URL = 'static/'
STATIC_ROOT
STATIC_ROOT is een absoluut pad. Deze variabele wordt gebruikt om statis bestanden op te halen zoals css-bestanden, afbeeldingen en javascript-bestanden.
Voorbeeld: STATIC_ROOT= os.path.join(BASE_DIR, 'static')
DEFAULT_AUTO_FIELD
DEFAULT_AUTO_FIELD
MEDIA_ROOT
Default: '' (Lege string)
Het absolute bestandspad naar de directory waar ge-uploade bestanden worden opgeslagen.
Voorbeeld: MEDIA_ROOT= "/var/www/site-naam.com/media/" of: MEDIA_ROOT= os.path.join(BASE_DIR, 'media')
MEDIA_ROOT en STATIC_ROOT mogen niet hetzelfde zijn, ze moeten verschillende waarden hebben.
MEDIA_URL
Default: '' (Lege string)
URL voor de media die via MEDIA_ROOT opgehaald wordt, gebruikt voor de opslag van bestanden. Deze moet eindigen op een slash indien deze niet leeg is. Je moet het afhandelen van deze bestanden configureren in zowel ontwikkelomgevingen als in productie omgevingen.
Als je {{ MEDIA_URL }}
wilt gebruiken in je templates, dan moet je 'django.template.context_processors.media' toevoegen in de 'context_processors' optie van TEMPLATES.
Voorbeeld: MEDIA_URL= "http://media.site-naam.com/" of: MEDIA_URL= '/media/'
MEDIA_URL en STATIC_URL mogen niet hetzelfde zijn, ze moeten verschillende waarden hebben.
Indien MEDIA_URL een relatief pad is, dan zal dit worden voorafgegaan door de door de server opgegeven waarde van SCRIPT_NAME (of / indien niet ingesteld).
SECRET_KEY
Default: '' (Lege string)
Een geheime sleutel voor een specifieke Django installatie. Deze SECRET_KEY moet je geheim houden.
De opdracht django-admin startproject
voegt automatische een willekeurig gegenereerde sleutel 'SECRET_KEY' toe aan elk nieuw project.
Django zal niet starten als er geen SECRET_KEY is ingesteld.
Als je een nieuwe SECRET_KEY instelt, dan moet je de oude nog even tijdelijk beschikbaar houden in SECRET_KEY_FALLBACKS.
SECRET_KEY_FALLBACKS
Default: []
Een list met oude sleutels (secret keys) voor een specifieke Django installatie. Dit maakt het vervangen van de SECRET_KEY mogelijk door de oude sleutel(s) nog tijdelijk beschikbaar te houden.