settings.py — центральный конфигурационный файл Django-проекта.
Ключевые настройки
from pathlib import Path
BASE_DIR = Path(__file__).resolve().parent.parent
# Никогда не коммить в Git! Хранить в .env
SECRET_KEY = 'django-insecure-...'
DEBUG = True # False в продакшене!
ALLOWED_HOSTS = [] # ['mysite.com', 'www.mysite.com'] в продакшене
INSTALLED_APPS
INSTALLED_APPS = [
'django.contrib.admin', # /admin/ панель
'django.contrib.auth', # система аутентификации
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# твои приложения:
'tasks',
]
DATABASES
# SQLite (разработка)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': BASE_DIR / 'db.sqlite3',
}
}
# PostgreSQL (продакшен)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'mydb',
'USER': 'myuser',
'PASSWORD': 'mypassword',
'HOST': 'localhost',
'PORT': '5432',
}
}
TEMPLATES
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [BASE_DIR / 'templates'], # глобальные шаблоны
'APP_DIRS': True, # шаблоны в tasks/templates/
'OPTIONS': {
'context_processors': [
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
Статика и медиафайлы
STATIC_URL = '/static/'
STATICFILES_DIRS = [BASE_DIR / 'static'] # исходники
STATIC_ROOT = BASE_DIR / 'staticfiles' # после collectstatic
MEDIA_URL = '/media/'
MEDIA_ROOT = BASE_DIR / 'media'
Язык и часовой пояс
LANGUAGE_CODE = 'ru-ru'
TIME_ZONE = 'Europe/Moscow'
USE_I18N = True # интернационализация
USE_TZ = True # хранить время в UTC, конвертировать при выводе
💬 Комментарии (0)
Комментариев пока нет
Станьте первым, кто поделится мнением об этой статье!