Настройки
Предупреждение
Будьте осторожны при перезаписи настроек, особенно когда значение по умолчанию — непустой список или словарь, например STATICFILES_FINDERS. Убедитесь, что вы сохранили компоненты, необходимые для работы функций Django, которые вы хотите использовать.
Основные настройки
Вот список настроек, доступных в ядре Django, и их значения по умолчанию. Настройки, предоставленные приложениями contrib, перечислены ниже, за ними следует тематический указатель основных настроек. Для вводной информации см. руководство по настройкам.
ABSOLUTE_URL_OVERRIDES
Значение по умолчанию: {} (Пустой словарь)
Словарь, сопоставляющий "app_label.model_name" строки функциям, которые принимают объект модели и возвращают его URL. Это способ вставки или перезаписи get_absolute_url() методов на уровне конкретной установки. Пример:
ABSOLUTE_URL_OVERRIDES = {
"blogs.blog": lambda o: "/blogs/%s/" % o.slug,
"news.story": lambda o: "/stories/%s/%s/" % (o.pub_year, o.slug),
}
Имя модели, используемое в этой настройке, должно быть в нижнем регистре, независимо от регистра фактического имени класса модели.
ADMINS
Значение по умолчанию: [] (Пустой список)
Список всех людей, которые получают уведомления об ошибках кода. Когда DEBUG=False и AdminEmailHandler настроен в LOGGING (делается по умолчанию), Django отправляет этим людям детали исключений, возникших в цикле запроса/ответа.
Каждый элемент в списке должен быть кортежем (Полное имя, адрес электронной почты). Пример:
[("John", "john@example.com"), ("Mary", "mary@example.com")]
ALLOWED_HOSTS
Значение по умолчанию: [] (Пустой список)
Список строк, представляющих имена хостов/доменов, которые может обслуживать этот сайт Django. Это мера безопасности для предотвращения атак на заголовки HTTP Host, которые возможны даже при многих, казалось бы, безопасных конфигурациях веб-сервера.
Значения в этом списке могут быть полными именами (например, 'www.example.com'), в этом случае они будут сопоставляться с заголовком запроса Host точно (регистронезависимо, без порта). Значение, начинающееся с точки, может использоваться как поддоменный шаблон: '.example.com' будет соответствовать example.com, www.example.com, и любому другому поддомену example.com. Значение '*' будет соответствовать чему угодно; в этом случае вы отвечаете за предоставление собственной валидации заголовка Host (возможно, в middleware; если это так, этот middleware должен быть указан первым в MIDDLEWARE).
Django также допускает использование полного доменного имени (FQDN) любых записей. Некоторые браузеры включают конечную точку в заголовке Host , которую Django удаляет при выполнении проверки хоста.
Если заголовок Host (или X-Forwarded-Host , если USE_X_FORWARDED_HOST включен) не соответствует ни одному значению в этом списке, метод django.http.HttpRequest.get_host() вызовет SuspiciousOperation.
Когда DEBUG равно True и ALLOWED_HOSTS пустой, хост проверяется на соответствие ['.localhost', '127.0.0.1', '[::1]'].
ALLOWED_HOSTS также проверяется при запуске тестов.
Эта проверка применяется только через get_host(); если ваш код напрямую обращается к заголовку Host из request.META , вы обходите эту меру безопасности.
APPEND_SLASH
Значение по умолчанию: True
При установке в True, если URL запроса не соответствует ни одному шаблону в URLconf и не заканчивается косой чертой, генерируется HTTP-переадресация на тот же URL с добавленной косой чертой. Обратите внимание, что переадресация может привести к потере любых данных, отправленных в запросе POST.
Настройка APPEND_SLASH используется только если установлен CommonMiddleware (см. Middleware). См. также PREPEND_WWW.
CACHES
Значение по умолчанию:
{
"default": {
"BACKEND": "django.core.cache.backends.locmem.LocMemCache",
}
}
Словарь, содержащий настройки всех кэшей, которые будут использоваться с Django. Это вложенный словарь, содержимое которого сопоставляет псевдонимы кэшей со словарем, содержащим параметры для отдельного кэша.
Настройка CACHES должна настроить кэш default ; любое количество дополнительных кэшей также может быть указано. Если вы используете кэш-бекенд, отличный от локального кэша памяти, или вам нужно определить несколько кэшей, понадобятся другие параметры. Доступны следующие параметры кэша.
BACKEND
Значение по умолчанию: '' (Пустая строка)
Используемый кэш-бекенд. Встроенные кэш-бекенды:
'django.core.cache.backends.db.DatabaseCache''django.core.cache.backends.dummy.DummyCache''django.core.cache.backends.filebased.FileBasedCache''django.core.cache.backends.locmem.LocMemCache''django.core.cache.backends.memcached.PyMemcacheCache''django.core.cache.backends.memcached.PyLibMCCache''django.core.cache.backends.redis.RedisCache'
Вы можете использовать кэш-бекенд, который не поставляется с Django, установив BACKEND на полное квалифицированное имя класса кэш-бекенда (например, mypackage.backends.whatever.WhateverCache).
KEY_FUNCTION
Строка, содержащая путь к функции (или любому вызываемому объекту), которая определяет, как составить префикс, версию и ключ в окончательный ключ кэша. Реализация по умолчанию эквивалентна функции:
def make_key(key, key_prefix, version):
return ":".join([key_prefix, str(version), key])
Вы можете использовать любую функцию ключа, которую хотите, при условии, что она имеет ту же сигнатуру аргументов.
См. документацию по кэшу для получения дополнительной информации.
KEY_PREFIX
Значение по умолчанию: '' (Пустая строка)
Строка, которая будет автоматически включена (по умолчанию в префиксе) ко всем ключам кэша, используемым сервером Django.
См. документацию по кэшу для получения дополнительной информации.
LOCATION
Значение по умолчанию: '' (Пустая строка)
Расположение используемого кэша. Это может быть каталог для файлового кэша, хост и порт для сервера memcache или идентифицирующее имя для локального кэша памяти. Например:
CACHES = {
"default": {
"BACKEND": "django.core.cache.backends.filebased.FileBasedCache",
"LOCATION": "/var/tmp/django_cache",
}
}
OPTIONS
Значение по умолчанию: None
Дополнительные параметры, передаваемые кэш-бекенду. Доступные параметры зависят от вашего кэш-бекенда.
Некоторую информацию об доступных параметрах можно найти в документации по параметрам кэша. Для получения дополнительной информации обратитесь к документации собственного модуля бэкенда.
TIMEOUT
Значение по умолчанию: 300
Количество секунд, после которого запись кэша считается устаревшей. Если значение этой настройки None, записи кэша не будут истекать. Значение 0 приводит к немедленному истечению ключей (эффективно «не кэшировать»).
VERSION
Значение по умолчанию: 1
Номер версии по умолчанию для ключей кэша, сгенерированных сервером Django.
См. документацию по кэшу для получения дополнительной информации.
CACHE_MIDDLEWARE_ALIAS
Значение по умолчанию: 'default'
Подключение к кэшу, используемое для middleware кэша.
CACHE_MIDDLEWARE_KEY_PREFIX
Значение по умолчанию: '' (Пустая строка)
Строка, которая будет добавлен как префикс к ключам кэша, генерируемым middleware кэша. Этот префикс комбинируется с настройкой KEY_PREFIX; он не заменяет его.
CACHE_MIDDLEWARE_SECONDS
Значение по умолчанию: 600
Количество секунд по умолчанию для кэширования страницы для middleware кэша.
CSRF_COOKIE_AGE
Срок действия cookie CSRF в секундах.
Причина установки длительного срока действия — избежать проблем в случае закрытия браузера пользователем, добавления страницы в закладки и последующего её загрузки из кэша браузера. Без постоянных кукис отправка формы в этом случае завершится ошибкой.
Некоторые браузеры (в частности, Internet Explorer) могут запретить использование постоянных кукис или повредить индексы файла кукис на диске, что приведёт к сбоям проверок CSRF (иногда — периодически). Измените это значение на None для использования кукис CSRF на основе сессии, которые хранят кукис в памяти вместо постоянного хранилища.
CSRF_COOKIE_DOMAIN
Домен, который будет использоваться при установке кукиса CSRF. Это может быть полезно для исключения запросов с разных поддоменов из стандартной защиты от поддельных запросов с одного сайта. Следует установить значение, например, ".example.com", чтобы разрешить запрос POST из формы на одном поддомене для обработки представлением с другого поддомена.
Обратите внимание, что наличие этого параметра не гарантирует, что защита Django от поддельных запросов с одного сайта от атак с разных поддоменов по умолчанию безопасна — ознакомьтесь с разделом Ограничения CSRF.
CSRF_COOKIE_HTTPONLY
Использовать HttpOnly флаг для кукиса CSRF. Если это значение установлено в True, клиентский JavaScript не сможет получить доступ к кукису CSRF.
Назначение кукиса CSRF как HttpOnly не обеспечивает никакой практической защиты, потому что CSRF защищает только от междоменных атак. Если злоумышленник может прочитать кукис через JavaScript, то, насколько браузер понимает, он уже находится на том же домене, что и жертва, и может делать что угодно. (XSS — гораздо более серьёзная проблема, чем CSRF.)
Хотя данное значение мало чем полезно на практике, иногда оно требуется аудиторами безопасности.
Если вы включили это и вам нужно отправлять значение маркера CSRF в запросе AJAX, ваш JavaScript должен получать его из скрытого поля формы CSRF-маркера, а не из кукиса.
Подробности о HttpOnly см. в SESSION_COOKIE_HTTPONLY.
CSRF_COOKIE_MASKED
По умолчанию: False
Маскировать кукис CSRF. Подробности см. в примечаниях к выпуску.
Устаревшее начиная с версии 4.1: Этот переходный параметр устарел и будет удалён в Django 5.0.
CSRF_COOKIE_NAME
Имя кукиса, используемого для маркера аутентификации CSRF. Можете задать любое имя (только если оно отличается от других имён кукис в вашем приложении). См. Защита от поддельных запросов с одного сайта.
CSRF_COOKIE_PATH
Путь, заданный в кукисе CSRF. Он должен соответствовать пути URL вашего приложения Django или быть его подпутем.
Это полезно, если у вас несколько экземпляров Django работают на одном хосте. Они могут использовать разные пути кукис, и каждый экземпляр увидит только свой собственный кукис CSRF.
CSRF_COOKIE_SAMESITE
Значение флага SameSite для кукиса CSRF. Этот флаг предотвращает отправку кукиса в межсайтовых запросах.
Подробности о SameSite см. в SESSION_COOKIE_SAMESITE.
CSRF_COOKIE_SECURE
Использовать защищённый кукис для кукиса CSRF. Если установлено True, кукис будет помечен как «защищённый», что означает, что браузеры могут гарантировать, что кукис будет отправлен только с подключением HTTPS.
CSRF_USE_SESSIONS
По умолчанию: False
Хранить маркер CSRF в сессии пользователя вместо кукиса. Требует использования django.contrib.sessions.
Хранение маркера CSRF в кукисе (по умолчанию в Django) безопасно, но хранение в сессии — общая практика в других веб-фреймворках и поэтому иногда требуется аудиторами безопасности.
Поскольку предварительно настроенные представления об ошибках требуют маркер CSRF, SessionMiddleware должен быть указан в MIDDLEWARE перед любым средством обработки, которое может вызвать исключение для активации представления об ошибке (например, PermissionDenied), если вы используете CSRF_USE_SESSIONS. См. Порядок обработки данных.
CSRF_FAILURE_VIEW
По умолчанию: 'django.views.csrf.csrf_failure'
Полное имя функции представления, используемой, когда входящий запрос отклоняется защитой от поддельных запросов с одного сайта (защита от поддельных запросов с одного сайта). Функция должна иметь такой вид:
def csrf_failure(request, reason=""):
...
где reason — короткое сообщение (предназначенное для разработчиков или регистрации, а не для конечных пользователей), указывающее причину отклонения запроса. Она должна возвращать HttpResponseForbidden.
django.views.csrf.csrf_failure() принимает дополнительный template_name параметр, который по умолчанию равен '403_csrf.html'. Если шаблон с таким именем существует, он будет использоваться для отображения страницы.
CSRF_HEADER_NAME
По умолчанию: 'HTTP_X_CSRFTOKEN'
Имя заголовка запроса, используемого для аутентификации CSRF.
Как и другие заголовки HTTP в request.META, имя заголовка, полученное от сервера, нормализуется путём преобразования всех символов в верхний регистр, замены дефисов на нижние подчёркивания и добавления префикса 'HTTP_' к имени. Например, если ваш клиент отправляет заголовок 'X-XSRF-TOKEN', значение параметра должно быть 'HTTP_X_XSRF_TOKEN'.
CSRF_TRUSTED_ORIGINS
По умолчанию: [] (Пустой список)
Список надёжных источников для небезопасных запросов (например, POST).
Для запросов, включающих заголовок Origin, защита Django от поддельных запросов с одного сайта требует, чтобы этот заголовок соответствовал источнику, указанному в заголовке Host.
Для небезопасного запроса secure, который не включает заголовок Origin, запрос должен иметь заголовок Referer, соответствующий источнику в заголовке Host.
Эти проверки предотвращают, например, запрос POST с subdomain.example.com от успешной обработки api.example.com. Если вам нужны небезопасные запросы с разных сайтов, продолжая пример, добавьте 'https://subdomain.example.com' в этот список (и/или http://... , если запросы исходят с незащищённой страницы).
Данный параметр также поддерживает поддомены, поэтому, например, можно добавить 'https://*.example.com', чтобы разрешить доступ со всех поддоменов example.com.
DATABASES
По умолчанию: {} (Пустой словарь)
Словарь, содержащий настройки всех баз данных, которые будут использоваться с Django. Это вложенный словарь, содержимое которого сопоставляет псевдоним базы данных со словарем, содержащим параметры отдельной базы данных.
Параметр DATABASES должен настроить базу данных default; также можно указать любое количество дополнительных баз данных.
Самый простой возможный файл настроек — для конфигурации с одной базой данных, использующей SQLite. Это можно настроить следующим образом:
DATABASES = {
"default": {
"ENGINE": "django.db.backends.sqlite3",
"NAME": "mydatabase",
}
}
При подключении к другим базам данных, таким как MariaDB, MySQL, Oracle или PostgreSQL, потребуются дополнительные параметры подключения. См. параметр ENGINE ниже, чтобы узнать, как указать другие типы баз данных. Пример для PostgreSQL:
DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql",
"NAME": "mydatabase",
"USER": "mydatabaseuser",
"PASSWORD": "mypassword",
"HOST": "127.0.0.1",
"PORT": "5432",
}
}
Доступны следующие внутренние параметры, которые могут потребоваться для более сложных конфигураций:
ATOMIC_REQUESTS
По умолчанию: False
Установите это значение в True чтобы обернуть каждое представление транзакцией в этой базе данных. См. Связывание транзакций с HTTP-запросами.
AUTOCOMMIT
По умолчанию: True
Установите это значение в False если хотите отключить управление транзакциями Django и реализовать собственное.
ENGINE
По умолчанию: '' (Пустая строка)
База данных, используемый бэкенд. Встроенные бэкенды баз данных:
'django.db.backends.postgresql''django.db.backends.mysql''django.db.backends.sqlite3''django.db.backends.oracle'
Вы можете использовать бэкенд базы данных, который не входит в состав Django, установив ENGINE в полный путь (например, mypackage.backends.whatever).
HOST
По умолчанию: '' (Пустая строка)
Хост, который нужно использовать при подключении к базе данных. Пустая строка означает localhost. Не используется с SQLite.
Если это значение начинается с прямой косой черты ('/') и вы используете MySQL, MySQL подключится через сокет Unix к указанному сокету. Например:
"HOST": "/var/run/mysql"
Если вы используете MySQL и это значение не начинается с прямой косой черты, то это значение предполагается как хост.
Если вы используете PostgreSQL, по умолчанию (пустое HOST), подключение к базе данных осуществляется через сокеты доменной системы Unix («локальные» строки в pg_hba.conf). Если ваш сокет доменной системы Unix не находится в стандартном расположении, используйте то же значение unix_socket_directory из postgresql.conf. Если вы хотите подключиться через TCP-сокеты, установите HOST на ‘localhost’ или ‘127.0.0.1’ («строки хоста» в pg_hba.conf). В Windows вы всегда должны определять HOST, так как сокеты доменной системы Unix недоступны.
NAME
Значение по умолчанию: '' (пустая строка)
Имя базы данных для использования. Для SQLite это полный путь к файлу базы данных. При указании пути всегда используйте прямые косые черты, даже в Windows (например, C:/homes/user/mysite/sqlite3.db).
CONN_MAX_AGE
Значение по умолчанию: 0
Срок жизни подключения к базе данных в секундах (целое число). Используйте 0 для закрытия подключений к базам данных в конце каждого запроса — историческое поведение Django — и None для неограниченных постоянных подключений к базам данных.
CONN_HEALTH_CHECKS
Значение по умолчанию: False
Если установлено True, существующие постоянные подключения к базам данных будут проверены на работоспособность перед повторным использованием в каждом запросе, выполняющем доступ к базе данных. Если проверка работоспособности завершится неудачно, подключение будет переустановлено без сбоя запроса, когда подключение больше не используется, но сервер базы данных готов принять и обслуживать новые подключения (например, после перезапуска сервера базы данных, закрывающего существующие подключения).
OPTIONS
Значение по умолчанию: {} (пустой словарь)
Дополнительные параметры для использования при подключении к базе данных. Доступные параметры различаются в зависимости от используемого бэкенда базы данных.
Некоторую информацию о доступных параметрах можно найти в документации Бэкенды баз данных. Для получения дополнительной информации, обратитесь к документации модуля вашего бэкенда.
PASSWORD
Значение по умолчанию: '' (пустая строка)
Пароль для подключения к базе данных. Не используется с SQLite.
PORT
Значение по умолчанию: '' (пустая строка)
Порт для подключения к базе данных. Пустая строка означает использование стандартного порта. Не используется с SQLite.
TIME_ZONE
Значение по умолчанию: None
Строка, представляющая часовой пояс для этого подключения к базе данных, или None. Этот внутренний параметр параметра DATABASES принимает те же значения, что и общий параметр TIME_ZONE.
Когда USE_TZ имеет значение True, и этот параметр установлен, чтение значений времени из базы данных возвращает значения времени с учетом часового пояса в этом часовом поясе вместо UTC. Когда USE_TZ имеет значение False, установка этого параметра является ошибкой.
-
Если бэкенд базы данных не поддерживает часовые пояса (например, SQLite, MySQL, Oracle), Django считывает и записывает значения времени в местное время в соответствии с этим параметром, если он установлен, и в UTC, если нет.
Изменение часового пояса подключения изменяет способ чтения и записи значений времени в базу данных.
- Если Django управляет базой данных и у вас нет веских причин поступать иначе, оставьте этот параметр без значения. Лучше всего хранить значения времени в UTC, так как это предотвращает неоднозначные или несуществующие значения времени во время перехода на летнее время. Кроме того, получение значений времени в UTC упрощает арифметику с датами и временем — нет необходимости учитывать возможные изменения смещения во время перехода на летнее/зимнее время.
- Если вы подключаетесь к базе данных стороннего разработчика, в которой значения времени хранятся в местном часовом поясе, а не в UTC, установите этот параметр на соответствующий часовой пояс. Аналогично, если Django управляет базой данных, но системы сторонних разработчиков подключаются к той же базе данных и ожидают найти значения времени в местном часовом поясе, установите этот параметр.
-
Если бэкенд базы данных поддерживает часовые пояса (например, PostgreSQL), параметр
TIME_ZONEочень редко требуется. Его можно изменить в любое время; база данных позаботится о преобразовании значений времени в желаемый часовой пояс.Установка часового пояса подключения к базе данных может быть полезна для выполнения необработанных запросов SQL, включающих функции даты/времени, предоставляемые базой данных, такие как
date_trunc, потому что их результаты зависят от часового пояса.Однако это имеет недостаток: получение всех значений времени в местном часовом поясе усложняет арифметику со значениями времени — вам нужно учитывать возможные изменения смещения во время перехода на летнее/зимнее время.
Вместо установки параметра
TIME_ZONE, рассмотрите явное преобразование в местное время с помощьюAT TIME ZONEв необработанных запросах SQL.
DISABLE_SERVER_SIDE_CURSORS
Значение по умолчанию: False
Установите это значение на True, если вы хотите отключить использование курсоров на стороне сервера с QuerySet.iterator(). Пулы транзакций и курсоры на стороне сервера описывает случай использования.
Это параметр, специфичный для PostgreSQL.
USER
Значение по умолчанию: '' (пустая строка)
Имя пользователя для подключения к базе данных. Не используется с SQLite.
TEST
Значение по умолчанию: {} (пустой словарь)
Словарь параметров для тестовых баз данных; для получения более подробной информации о создании и использовании тестовых баз данных см. Тестовую базу данных.
Вот пример с конфигурацией тестовой базы данных:
DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql",
"USER": "mydatabaseuser",
"NAME": "mydatabase",
"TEST": {
"NAME": "mytestdatabase",
},
},
}
Следующие ключи в словаре TEST доступны:
CHARSET
Значение по умолчанию: None
Кодировка набора символов, используемая для создания тестовой базы данных. Значение этой строки передается непосредственно в базу данных, поэтому ее формат специфичен для бэкенда.
Поддерживается бэкендами PostgreSQL (postgresql) и MySQL (mysql).
COLLATION
Значение по умолчанию: None
Порядок сортировки для использования при создании тестовой базы данных. Это значение передается непосредственно бэкенду, поэтому его формат специфичен для бэкенда.
Поддерживается только для бэкенда mysql (см. руководство MySQL для получения дополнительных сведений).
DEPENDENCIES
Значение по умолчанию: ['default'], для всех баз данных, кроме default, которая не имеет зависимостей.
Зависимости создания базы данных. См. документацию по управлению порядком создания тестовых баз данных для получения дополнительных сведений.
MIGRATE
Значение по умолчанию: True
При установке значения False миграции не будут выполняться при создании тестовой базы данных. Это аналогично установке значения None в MIGRATION_MODULES, но для всех приложений.
MIRROR
Значение по умолчанию: None
Псевдоним базы данных, который эта база данных должна дублировать во время тестирования. Он зависит от транзакций и поэтому должен использоваться в TransactionTestCase, а не в TestCase.
Этот параметр предназначен для тестирования конфигураций мастер/раб (иногда называемых мастер/слейв в некоторых базах данных) нескольких баз данных. См. документацию по тестированию конфигураций мастер/раб для получения дополнительных сведений.
NAME
Значение по умолчанию: None
Имя базы данных для использования при выполнении тестового набора.
Если используется значение по умолчанию (None) с движком базы данных SQLite, тесты будут использовать базу данных в памяти. Для всех остальных движков баз данных тестовая база данных будет использовать имя 'test_' + DATABASE_NAME.
См. Тестовую базу данных.
SERIALIZE
Булево значение для управления сериализацией стандартного тестового исполнителя базы данных в строку JSON в памяти перед запуском тестов (используется для восстановления состояния базы данных между тестами, если у вас нет транзакций). Вы можете установить это значение на False для ускорения времени создания, если у вас нет ни одного класса тестов с serialized_rollback=True.
Устаревшее начиная с версии 4.0: Это значение устарело, так как его можно вывести из databases с включенным параметром serialized_rollback.
TEMPLATE
Это параметр, специфичный для PostgreSQL.
Имя шаблона шаблона (например, 'template0') для создания тестовой базы данных.
CREATE_DB
По умолчанию: True
Это параметр, специфичный для Oracle.
Если установлено значение False, тестовые табличные пространства не будут автоматически создаваться в начале тестов или удаляться в конце.
CREATE_USER
По умолчанию: True
Это параметр, специфичный для Oracle.
Если установлено значение False, тестовый пользователь не будет автоматически создаваться в начале тестов и удаляться в конце.
USER
По умолчанию: None
Это параметр, специфичный для Oracle.
Имя пользователя для подключения к базе данных Oracle, которая будет использоваться при выполнении тестов. Если не указано, Django будет использовать 'test_' + USER.
PASSWORD
По умолчанию: None
Это параметр, специфичный для Oracle.
Пароль для подключения к базе данных Oracle, которая будет использоваться при выполнении тестов. Если не указано, Django сгенерирует случайный пароль.
ORACLE_MANAGED_FILES
По умолчанию: False
Это параметр, специфичный для Oracle.
Если установлено значение True, будут использоваться табличные пространства Oracle Managed Files (OMF). DATAFILE и DATAFILE_TMP будут игнорироваться.
TBLSPACE
По умолчанию: None
Это параметр, специфичный для Oracle.
Имя табличного пространства, которое будет использоваться при выполнении тестов. Если не указано, Django будет использовать 'test_' + USER.
TBLSPACE_TMP
По умолчанию: None
Это параметр, специфичный для Oracle.
Имя временного табличного пространства, которое будет использоваться при выполнении тестов. Если не указано, Django будет использовать 'test_' + USER + '_temp'.
DATAFILE
По умолчанию: None
Это параметр, специфичный для Oracle.
Имя файла данных для использования в TBLSPACE. Если не указано, Django будет использовать TBLSPACE + '.dbf'.
DATAFILE_TMP
По умолчанию: None
Это параметр, специфичный для Oracle.
Имя файла данных для использования в TBLSPACE_TMP. Если не указано, Django будет использовать TBLSPACE_TMP + '.dbf'.
DATAFILE_MAXSIZE
По умолчанию: '500M'
Это параметр, специфичный для Oracle.
Максимальный размер, до которого разрешено увеличиваться DATAFILE.
DATAFILE_TMP_MAXSIZE
По умолчанию: '500M'
Это параметр, специфичный для Oracle.
Максимальный размер, до которого разрешено увеличиваться DATAFILE_TMP.
DATAFILE_SIZE
По умолчанию: '50M'
Это параметр, специфичный для Oracle.
Начальный размер DATAFILE.
DATAFILE_TMP_SIZE
По умолчанию: '50M'
Это параметр, специфичный для Oracle.
Начальный размер DATAFILE_TMP.
DATAFILE_EXTSIZE
По умолчанию: '25M'
Это параметр, специфичный для Oracle.
Размер, на который DATAFILE увеличивается при необходимости.
DATAFILE_TMP_EXTSIZE
По умолчанию: '25M'
Это параметр, специфичный для Oracle.
Размер, на который DATAFILE_TMP увеличивается при необходимости.
DATA_UPLOAD_MAX_MEMORY_SIZE
По умолчанию: 2621440 (т.е. 2,5 МБ).
Максимальный размер тела запроса в байтах, после которого будет поднято исключение SuspiciousOperation (RequestDataTooBig). Проверка выполняется при обращении к request.body или request.POST, и рассчитывается по отношению к общему размеру запроса, за исключением данных загружаемого файла. Можно установить это значение в None, чтобы отключить проверку. Приложения, которые ожидают необычно большие POST-запросы, должны настроить это значение.
Объем данных запроса коррелирует с объемом памяти, необходимой для обработки запроса и заполнения словарей GET и POST. Крупные запросы могут использоваться в качестве вектора атаки типа «отказ в обслуживании», если не принять соответствующие меры. Поскольку веб-серверы обычно не выполняют глубокий анализ запросов, подобная проверка на этом уровне невозможна.
См. также FILE_UPLOAD_MAX_MEMORY_SIZE.
DATA_UPLOAD_MAX_NUMBER_FIELDS
По умолчанию: 1000
Максимальное количество параметров, которые могут быть получены через GET или POST, прежде чем будет поднято исключение SuspiciousOperation (TooManyFields). Можно установить это значение в None, чтобы отключить проверку. Приложения, которые ожидают необычно большое количество полей формы, должны настроить это значение.
Количество параметров запроса коррелирует со временем, необходимым для обработки запроса и заполнения словарей GET и POST. Крупные запросы могут использоваться в качестве вектора атаки типа «отказ в обслуживании», если не принять соответствующие меры. Поскольку веб-серверы обычно не выполняют глубокий анализ запросов, подобная проверка на этом уровне невозможна.
DATA_UPLOAD_MAX_NUMBER_FILES
По умолчанию: 100
Максимальное количество файлов, которые могут быть получены через POST в запросе с кодировкой multipart/form-data перед поднятием исключения SuspiciousOperation (TooManyFiles). Можно установить это значение в None, чтобы отключить проверку. Приложения, которые ожидают необычно большое количество полей файлов, должны настроить это значение.
Количество принимаемых файлов коррелирует со временем и объёмом памяти, необходимыми для обработки запроса. Крупные запросы могут использоваться как вектор атаки «отказ в обслуживании», если не предпринимать защитных мер. Поскольку веб-серверы обычно не выполняют глубокий анализ запросов, подобная проверка на этом уровне невозможна.
DATABASE_ROUTERS
По умолчанию: [] (Пустой список)
Список маршрутизаторов, которые будут использоваться для определения базы данных, к которой обращаться при выполнении запроса к базе данных.
См. документацию по автоматическому маршрутизированию базы данных в многобазовых конфигурациях.
DATE_FORMAT
По умолчанию: 'N j, Y' (например, Feb. 4, 2003)
Формат по умолчанию для отображения полей даты в любой части системы. Обратите внимание, что если USE_L10N установлено в True, то заданный для локали формат имеет более высокий приоритет и будет применён вместо него. См. allowed date format strings.
См. также DATETIME_FORMAT, TIME_FORMAT и SHORT_DATE_FORMAT.
DATE_INPUT_FORMATS
По умолчанию:
[
"%Y-%m-%d", # '2006-10-25'
"%m/%d/%Y", # '10/25/2006'
"%m/%d/%y", # '10/25/06'
"%b %d %Y", # 'Oct 25 2006'
"%b %d, %Y", # 'Oct 25, 2006'
"%d %b %Y", # '25 Oct 2006'
"%d %b, %Y", # '25 Oct, 2006'
"%B %d %Y", # 'October 25 2006'
"%B %d, %Y", # 'October 25, 2006'
"%d %B %Y", # '25 October 2006'
"%d %B, %Y", # '25 October, 2006'
]
Список форматов, которые будут приниматься при вводе данных в поле даты. Форматы будут проверяться в порядке, и будет использоваться первый валидный. Обратите внимание, что эти строки формата используют синтаксис модуля Python datetime, а не строки формата из фильтра шаблона date.
Когда USE_L10N равно True, формат, заданный для локали, имеет более высокий приоритет и будет применён вместо него.
См. также DATETIME_INPUT_FORMATS и TIME_INPUT_FORMATS.
DATETIME_FORMAT
По умолчанию: 'N j, Y, P' (например, Feb. 4, 2003, 4 p.m.)
Формат по умолчанию для отображения полей datetime в любой части системы. Обратите внимание, что если USE_L10N установлено в True, то заданный для локали формат имеет более высокий приоритет и будет применён вместо него. См. allowed date format strings.
См. также DATE_FORMAT, TIME_FORMAT и SHORT_DATETIME_FORMAT.
DATETIME_INPUT_FORMATS
По умолчанию:
[
"%Y-%m-%d %H:%M:%S", # '2006-10-25 14:30:59'
"%Y-%m-%d %H:%M:%S.%f", # '2006-10-25 14:30:59.000200'
"%Y-%m-%d %H:%M", # '2006-10-25 14:30'
"%m/%d/%Y %H:%M:%S", # '10/25/2006 14:30:59'
"%m/%d/%Y %H:%M:%S.%f", # '10/25/2006 14:30:59.000200'
"%m/%d/%Y %H:%M", # '10/25/2006 14:30'
"%m/%d/%y %H:%M:%S", # '10/25/06 14:30:59'
"%m/%d/%y %H:%M:%S.%f", # '10/25/06 14:30:59.000200'
"%m/%d/%y %H:%M", # '10/25/06 14:30'
]
Список форматов, которые будут приняты при вводе данных в поле datetime. Форматы будут пробоваться в порядке следования, используя первый допустимый. Обратите внимание, что эти строковые форматы используют синтаксис модуля datetime Python, а не строковые форматы из фильтра шаблона date. Форматы только даты не включены, так как поля datetime автоматически попробуют DATE_INPUT_FORMATS в крайнем случае.
Когда USE_L10N True, формат, определённый локалью, имеет более высокий приоритет и будет применён вместо него.
См. также DATE_INPUT_FORMATS и TIME_INPUT_FORMATS.
DEBUG
По умолчанию: False
Булево значение, которое включает/выключает режим отладки.
Никогда не развёртывайте сайт в производство с включённой DEBUG.
Одной из основных функций режима отладки является отображение подробных страниц ошибок. Если ваше приложение вызывает исключение, когда DEBUG True, Django отобразит подробный трассировку, включая множество метаданных об вашей среде, таких как все текущие настройки Django (от settings.py).
В целях безопасности Django не будет включать настройки, которые могут быть конфиденциальными, такие как SECRET_KEY. В частности, он будет исключать любые настройки, имя которых содержит любой из следующих элементов:
'API''KEY''PASS''SECRET''SIGNATURE''TOKEN'
Обратите внимание, что это частичные совпадения. 'PASS' также будет совпадать с PASSWORD, так же как 'TOKEN' также будет совпадать с TOKENIZED и так далее.
Тем не менее, обратите внимание, что всегда будут разделы вашего отладочного вывода, которые непригодны для публичного использования. Пути к файлам, параметры конфигурации и тому подобное предоставляют атакующим дополнительную информацию о вашем сервере.
Также важно помнить, что при работе с включённой DEBUG, Django будет запоминать каждый SQL-запрос, который он выполняет. Это полезно при отладке, но быстро потребляет память на сервере в производстве.
Наконец, если DEBUG False, вам также необходимо правильно установить настройку ALLOWED_HOSTS. Если этого не сделать, все запросы будут возвращаться как «Неверный запрос (400)».
Примечание
Созданный по умолчанию файл settings.py django-admin
startproject устанавливает DEBUG = True для удобства.
DEBUG_PROPAGATE_EXCEPTIONS
По умолчанию: False
Если установлено True, обработка исключений Django для функций представлений (handler500 или представление отладки, если DEBUG True) и регистрация ответов 500 (django.request) пропускаются, а исключения распространяются вверх.
Это может быть полезно для некоторых тестовых установок. Его не следует использовать на рабочем сайте, если вы не хотите, чтобы ваш веб-сервер (вместо Django) генерировал ответы «Внутренняя ошибка сервера». В этом случае убедитесь, что ваш сервер не отображает трассировку стека или другую конфиденциальную информацию в ответе.
DECIMAL_SEPARATOR
По умолчанию: '.' (Точка)
По умолчанию разделитель десятичных знаков, используемый при форматировании десятичных чисел.
Обратите внимание, что если USE_L10N установлено на True, то формат, определённый локалью, имеет более высокий приоритет и будет применён вместо него.
См. также NUMBER_GROUPING, THOUSAND_SEPARATOR и USE_THOUSAND_SEPARATOR.
DEFAULT_AUTO_FIELD
По умолчанию: 'django.db.models.AutoField'
Тип поля первичного ключа по умолчанию для моделей, у которых нет поля с primary_key=True.
DEFAULT_CHARSET
По умолчанию: 'utf-8'
По умолчанию кодировка символов для всех HttpResponse объектов, если тип MIME не указан вручную. Используется при построении заголовка Content-Type.
DEFAULT_EXCEPTION_REPORTER
По умолчанию: 'django.views.debug.ExceptionReporter'
Класс отчётчика об исключениях по умолчанию, который будет использоваться, если он ещё не был назначен экземпляру HttpRequest. См. Настройка отчетов об ошибках.
DEFAULT_EXCEPTION_REPORTER_FILTER
По умолчанию: 'django.views.debug.SafeExceptionReporterFilter'
Класс фильтра отчётчика об исключениях по умолчанию, который будет использоваться, если он ещё не был назначен экземпляру HttpRequest. См. Фильтрация отчетов об ошибках.
DEFAULT_FILE_STORAGE
По умолчанию: 'django.core.files.storage.FileSystemStorage'
Класс хранения файлов по умолчанию, который будет использоваться для любых операций, связанных с файлами, которые не указывают конкретную систему хранения. См. Управление файлами.
Устарело начиная с версии 4.2: Эта настройка устарела. Начиная с Django 4.2, движок хранилища файлов по умолчанию можно настроить с помощью настройки STORAGES под ключом default.
DEFAULT_FROM_EMAIL
По умолчанию: 'webmaster@localhost'
Почтовый адрес по умолчанию для различных автоматических сообщений от администратора(ов) сайта. Это не включает сообщения об ошибках, отправленные в ADMINS и MANAGERS; для этого см. SERVER_EMAIL.
DEFAULT_INDEX_TABLESPACE
По умолчанию: '' (Пустая строка)
Пространство таблиц по умолчанию для индексов полей, которые не указывают его, если бэкенд это поддерживает (см. Пространства таблиц).
DEFAULT_TABLESPACE
По умолчанию: '' (Пустая строка)
Пространство таблиц по умолчанию для моделей, которые не указывают его, если бэкенд это поддерживает (см. Пространства таблиц).
DISALLOWED_USER_AGENTS
По умолчанию: [] (Пустой список)
Список скомпилированных регулярных выражений, представляющих строки User-Agent, которые запрещены для посещения любых страниц, для всей системы. Используйте это для ботов/поисковых роботов. Это используется только если установлено CommonMiddleware (см. Средство).
EMAIL_BACKEND
По умолчанию: 'django.core.mail.backends.smtp.EmailBackend'
Бэкенд, используемый для отправки писем. Список доступных бэкэндов см. в Отправка писем.
EMAIL_FILE_PATH
По умолчанию: Не определено
Директория, используемая бэкэндом отправки писем по файлам, для хранения выходных файлов.
EMAIL_HOST
По умолчанию: 'localhost'
Хост, используемый для отправки писем.
См. также EMAIL_PORT.
EMAIL_HOST_PASSWORD
По умолчанию: '' (Пустая строка)
Пароль для SMTP-сервера, определённого в EMAIL_HOST. Эта настройка используется совместно с EMAIL_HOST_USER при аутентификации на SMTP-сервере. Если какая-либо из этих настроек пустая, Django не будет пытаться выполнить аутентификацию.
См. также EMAIL_HOST_USER.
EMAIL_HOST_USER
По умолчанию: '' (Пустая строка)
Имя пользователя для SMTP-сервера, определённого в EMAIL_HOST. Если пусто, Django не будет пытаться выполнить аутентификацию.
См. также EMAIL_HOST_PASSWORD.
EMAIL_PORT
По умолчанию: 25
Порт для SMTP-сервера, определённого в EMAIL_HOST.
EMAIL_SUBJECT_PREFIX
По умолчанию: '[Django] '
Префикс для темы сообщения электронной почты, отправленного с помощью django.core.mail.mail_admins или django.core.mail.mail_managers. Вероятно, вам понадобится добавить завершающий пробел.
EMAIL_USE_LOCALTIME
По умолчанию: False
Отправлять заголовок SMTP Date сообщений электронной почты в часовом поясе по умолчанию (True) или по UTC (False).
EMAIL_USE_TLS
По умолчанию: False
Использовать TLS (защищённое) соединение при общении с SMTP-сервером. Используется для явных TLS-соединений, обычно на порте 587. Если у вас возникают проблемы с зависанием соединений, см. настройку неявного TLS EMAIL_USE_SSL.
EMAIL_USE_SSL
По умолчанию: False
Использовать неявное TLS (защищённое) соединение при общении с SMTP-сервером. В большинстве документаций по электронной почте этот тип TLS-соединения упоминается как SSL. Обычно используется на порте 465. Если у вас возникают проблемы, см. настройку явного TLS EMAIL_USE_TLS.
Обратите внимание, что EMAIL_USE_TLS/EMAIL_USE_SSL взаимно исключают друг друга, поэтому установите только одну из этих настроек в True.
EMAIL_SSL_CERTFILE
По умолчанию: None
Если EMAIL_USE_SSL или EMAIL_USE_TLS равно True, можно указать путь к файлу цепочки сертификатов в формате PEM для использования в SSL-соединении.
EMAIL_SSL_KEYFILE
По умолчанию: None
Если EMAIL_USE_SSL или EMAIL_USE_TLS равно True, можно указать путь к файлу закрытого ключа в формате PEM для использования в SSL-соединении.
Обратите внимание, что установка EMAIL_SSL_CERTFILE и EMAIL_SSL_KEYFILE не приводит к проверке сертификатов. Они передаются в подлежащее SSL-соединение. Для получения подробной информации о том, как обрабатываются файлы цепочки сертификатов и закрытый ключ, обратитесь к документации функции Python ssl.wrap_socket().
EMAIL_TIMEOUT
По умолчанию: None
Устанавливает время ожидания в секундах для блокирующих операций, таких как попытка подключения.
FILE_UPLOAD_HANDLERS
По умолчанию:
[
"django.core.files.uploadhandler.MemoryFileUploadHandler",
"django.core.files.uploadhandler.TemporaryFileUploadHandler",
]
Список обработчиков, используемых для загрузки. Изменение этой настройки позволяет полностью настроить — даже заменить — процесс загрузки Django.
Подробности см. в Управление файлами.
FILE_UPLOAD_MAX_MEMORY_SIZE
По умолчанию: 2621440 (т.е. 2,5 МБ).
Максимальный размер (в байтах), до которого загрузка будет буферизироваться перед отправкой на файловую систему. Подробности см. в Управление файлами.
См. также DATA_UPLOAD_MAX_MEMORY_SIZE.
FILE_UPLOAD_DIRECTORY_PERMISSIONS
По умолчанию: None
Числовой режим, применяемый к каталогам, создаваемым в процессе загрузки файлов.
Эта настройка также определяет права по умолчанию для собранных статических каталогов при использовании команды управления collectstatic. Подробности см. в collectstatic.
Это значение отражает функциональность и замечания настройки FILE_UPLOAD_PERMISSIONS.
FILE_UPLOAD_PERMISSIONS
По умолчанию: 0o644
Числовой режим (например, 0o644) для установки новых загруженных файлов. Дополнительную информацию о значениях этих режимов см. в документации os.chmod().
Если None, поведение зависит от операционной системы. На большинстве платформ временные файлы будут иметь режим 0o600, а файлы, сохранённые из памяти, будут сохранены с использованием стандартного значения umask системы.
По соображениям безопасности эти права не применяются к временным файлам, хранящимся в FILE_UPLOAD_TEMP_DIR.
Эта настройка также определяет права по умолчанию для собранных статических файлов при использовании команды управления collectstatic. Подробности см. в collectstatic.
Предупреждение
Всегда используйте префикс 0o .
Если вы не знакомы с режимами файлов, обратите внимание, что префикс 0o очень важен: он указывает на восьмеричное число, в котором должны быть указаны режимы. Если вы попробуете использовать 644, получите совершенно неверное поведение.
FILE_UPLOAD_TEMP_DIR
По умолчанию: None
Директория для временного хранения данных (обычно файлов, больших, чем FILE_UPLOAD_MAX_MEMORY_SIZE) при загрузке файлов. Если None, Django будет использовать стандартную временную директорию операционной системы. Например, по умолчанию это будет /tmp в операционных системах типа *nix.
Подробности см. в Управление файлами.
FIRST_DAY_OF_WEEK
По умолчанию: 0 (воскресенье)
Число, представляющее первый день недели. Это особенно полезно при отображении календаря. Это значение используется только при отсутствии форматирования по правилам международного формата или при отсутствии формата для текущего региона.
Значение должно быть целым числом от 0 до 6, где 0 обозначает воскресенье, 1 — понедельник и так далее.
FIXTURE_DIRS
По умолчанию: [] (Пустой список)
Список каталогов, просматриваемых для файлов с данными fixture, помимо каталога fixtures каждого приложения, в порядке поиска.
Обратите внимание, что эти пути должны использовать косые черты в стиле Unix, даже в Windows.
См. Предоставление данных с помощью fixture и Загрузка fixture.
FORCE_SCRIPT_NAME
По умолчанию: None
Если не None, это будет использоваться как значение переменной среды SCRIPT_NAME в любом HTTP-запросе. Эта настройка может использоваться для переопределения значения, предоставленного сервером, переменной SCRIPT_NAME, которая может быть переписанной версией предпочтительного значения или не предоставляться вообще. Она также используется django.setup() для установки префикса скрипта решателя URL вне цикла запроса/ответа (например, в командах управления и автономных скриптах) для генерации правильных URL-адресов, когда SCRIPT_NAME не /.
FORM_RENDERER
По умолчанию: 'django.forms.renderers.DjangoTemplates'
Класс, который отображает формы и виджеты форм. Он должен реализовывать API низкого уровня для рендеринга виджетов. Включенные рендеры форм:
-
'django.forms.renderers.DjangoTemplates' -
'django.forms.renderers.Jinja2' -
'django.forms.renderers.TemplatesSetting'
FORMAT_MODULE_PATH
По умолчанию: None
Полный путь к Python-пакету, содержащему пользовательские определения форматов для локалей проекта. Если это не None, Django будет проверять наличие файла formats.py, в директории с именем текущей локали, и будет использовать форматы, определенные в этом файле.
Например, если FORMAT_MODULE_PATH установлено в mysite.formats, а текущий язык en (английский), Django будет ожидать древовидную структуру каталогов, подобную:
mysite/
formats/
__init__.py
en/
__init__.py
formats.py
Также вы можете установить это значение в список Python-путей, например:
FORMAT_MODULE_PATH = [
"mysite.formats",
"some_app.formats",
]
При поиске определенного формата Django будет перебирать все указанные Python-пути, пока не найдет модуль, который фактически определяет данный формат. Это означает, что форматы, определенные в пакетах, расположенных выше в списке, будут иметь приоритет над одинаковыми форматами в пакетах, расположенных ниже.
Доступные форматы:
DATE_FORMATDATE_INPUT_FORMATS-
DATETIME_FORMAT, DATETIME_INPUT_FORMATSDECIMAL_SEPARATORFIRST_DAY_OF_WEEKMONTH_DAY_FORMATNUMBER_GROUPINGSHORT_DATE_FORMATSHORT_DATETIME_FORMATTHOUSAND_SEPARATORTIME_FORMATTIME_INPUT_FORMATSYEAR_MONTH_FORMAT
IGNORABLE_404_URLS
По умолчанию: [] (Пустой список)
Список скомпилированных объектов регулярных выражений, описывающих URL-адреса, которые следует игнорировать при сообщении об ошибках HTTP 404 по электронной почте (см. Как управлять обработкой ошибок). Регулярные выражения сопоставляются с request's full paths (включая строку запроса, если таковая имеется). Используйте это, если ваш сайт не предоставляет часто запрашиваемый файл, например favicon.ico или robots.txt.
Это используется только в том случае, если BrokenLinkEmailsMiddleware включен (см. Средство промежуточного программного обеспечения).
INSTALLED_APPS
По умолчанию: [] (Пустой список)
Список строк, обозначающих все приложения, которые активированы в данной установке Django. Каждая строка должна быть полным путем к Python-классу конфигурации приложения (предпочтительно) или пакету, содержащему приложение.
- класс конфигурации приложения (предпочтительно), или
- пакет, содержащий приложение.
Дополнительная информация о конфигурациях приложений.
Используйте реестр приложений для интроспекции
Ваш код никогда не должен обращаться к INSTALLED_APPS напрямую. Используйте django.apps.apps вместо этого.
Имена и метки приложений должны быть уникальными в INSTALLED_APPS
Имя приложения names — полное имя пути к Python-пакету приложения — должно быть уникальным. Нет способа включить одно и то же приложение дважды, кроме как продублировать его код под другим именем.
Метка приложения labels (по умолчанию — последняя часть имени) также должна быть уникальной. Например, вы не можете включить как django.contrib.auth так и myproject.auth. Однако вы можете переименовать приложение с помощью пользовательской конфигурации, которая определяет другую метку label.
Эти правила применяются независимо от того, ссылаются ли INSTALLED_APPS на классы конфигурации приложений или пакеты приложений.
Когда несколько приложений предоставляют разные версии одного и того же ресурса (шаблон, статический файл, команда управления, перевод), приложение, указанное первым в INSTALLED_APPS, имеет приоритет.
INTERNAL_IPS
По умолчанию: [] (Пустой список)
Список IP-адресов (в виде строк), которые:
- Разрешают обработчику контекста
debug()добавить некоторые переменные в контекст шаблона. - Позволяют использовать закладки админских закладок, даже если пользователь не вошел в систему как администратор.
- Отмечаются как «внутренние» (в отличие от «ВНЕШНИЕ») в письмах
AdminEmailHandler.
LANGUAGE_CODE
По умолчанию: 'en-us'
Строка, представляющая код языка для этой установки. Он должен быть в стандартном формате идентификатора языка. Например, английский США — "en-us". См. также список идентификаторов языка и Международная и локальная поддержка.
USE_I18N должен быть активен для того, чтобы это значение имело какой-либо эффект.
Он выполняет две функции:
- Если модуль локализации не используется, он определяет, какой перевод будет отображаться всем пользователям.
- Если модуль локализации активен, он предоставляет язык по умолчанию в случае, если предпочтительный язык пользователя не может быть определен или не поддерживается веб-сайтом. Он также предоставляет перевод по умолчанию, если для данного литерала не существует перевода на предпочтительный язык пользователя.
См. Как Django определяет предпочтение языка для получения дополнительной информации.
LANGUAGE_COOKIE_AGE
Срок действия cookie языка в секундах.
LANGUAGE_COOKIE_DOMAIN
Домен для cookie языка. Установите его на строку, например "example.com", для cookie разных доменов или используйте None для обычного cookie домена.
Будьте осторожны при обновлении этого параметра на производственном сайте. Если вы обновите этот параметр для включения cookie разных доменов на сайте, который ранее использовал стандартный cookie домена, существующие cookie пользователей со старым доменом не будут обновлены. Это приведет к невозможности для пользователей сайта переключать язык, пока эти cookie не истекут. Единственный безопасный и надежный способ выполнить переключение — навсегда изменить имя cookie языка (через параметр LANGUAGE_COOKIE_NAME) и добавить средство промежуточного программного обеспечения, которое копирует значение из старого cookie в новый, а затем удаляет старый.
LANGUAGE_COOKIE_HTTPONLY
Использовать ли HttpOnly флаг в cookie языка. Если установлено True, клиентский JavaScript не сможет получить доступ к cookie языка.
См. SESSION_COOKIE_HTTPONLY для получения подробной информации о HttpOnly.
LANGUAGE_COOKIE_NAME
Имя cookie для cookie языка. Вы можете выбрать любое имя (при условии, что оно отличается от других имен cookie в вашем приложении). См. Международная и локальная поддержка.
LANGUAGE_COOKIE_PATH
Путь, установленный в cookie языка. Он должен соответствовать пути URL вашей установки Django или быть его родительским каталогом.
Это полезно, если у вас несколько экземпляров Django, работающих под одним именем хоста. Они могут использовать разные пути cookie, и каждый экземпляр будет видеть только свой собственный cookie языка.
Будьте осторожны при обновлении этого параметра на сайте в режиме работы. Если вы обновите этот параметр, чтобы использовать более глубокий путь, чем ранее, существующие cookie-файлы пользователей со старым путём не будут обновлены. Это приведёт к тому, что пользователи сайта не смогут изменить язык, пока эти cookie-файлы не исчезнут. Единственный безопасный и надёжный способ выполнения переключения — это навсегда изменить имя cookie языка (через параметр LANGUAGE_COOKIE_NAME) и добавить middleware, который копирует значение из старого cookie в новый, а затем удаляет старый.
LANGUAGE_COOKIE_SAMESITE
Значение флага SameSite для cookie языка. Этот флаг предотвращает отправку cookie в межсайтовых запросах.
См. SESSION_COOKIE_SAMESITE для получения подробной информации об SameSite.
LANGUAGE_COOKIE_SECURE
Использовать ли защищённый cookie для cookie языка. Если это значение установлено в True, cookie будет помечен как «защищённый», что означает, что браузеры могут гарантировать, что cookie отправляется только по HTTPS-соединению.
LANGUAGES
Значение по умолчанию: Список всех доступных языков. Этот список постоянно расширяется, и включение его копии неизбежно быстро устареет. Вы можете посмотреть текущий список переведённых языков, обратившись к django/conf/global_settings.py.
Список представляет собой список кортежей из двух элементов в формате (код языка, language name) — например, ('ja', 'Japanese'). Это указывает, какие языки доступны для выбора языка. См. Международные и локальные настройки.
Как правило, значения по умолчанию должны быть достаточными. Изменяйте этот параметр только в том случае, если хотите ограничить выбор языка подмножеством языков, предоставляемых Django.
Если вы определяете настраиваемый параметр LANGUAGES, вы можете пометить имена языков как строки перевода, используя функцию gettext_lazy().
Вот пример файла настроек:
from django.utils.translation import gettext_lazy as _
LANGUAGES = [
("de", _("German")),
("en", _("English")),
]
LANGUAGES_BIDI
Значение по умолчанию: Список всех кодов языков, написанных справа налево. Вы можете посмотреть текущий список этих языков, обратившись к django/conf/global_settings.py.
Список содержит коды языков языков, которые пишутся справа налево.
Как правило, значения по умолчанию должны быть достаточными. Изменяйте этот параметр только в том случае, если хотите ограничить выбор языка подмножеством языков, предоставляемых Django. Если вы определяете настраиваемый параметр LANGUAGES, список языков с двунаправленной ориентацией может содержать коды языков, которые не активированы на данном сайте.
LOCALE_PATHS
Значение по умолчанию: [] (Пустой список)
Список каталогов, в которых Django ищет файлы переводов. См. Как Django находит переводы.
Пример:
LOCALE_PATHS = [
"/home/www/project/common_files/locale",
"/var/local/translations/locale",
]
Django будет искать в каждом из этих путей каталоги <locale_code>/LC_MESSAGES, содержащие фактические файлы переводов.
LOGGING
Значение по умолчанию: Словарь конфигурации логирования.
Структура данных, содержащая конфигурационную информацию. Если она не пуста, содержимое этой структуры данных будет передано в качестве аргумента методу конфигурации, описанному в LOGGING_CONFIG.
Среди прочего, конфигурация журнала по умолчанию отправляет ошибки сервера HTTP 500 в обработчик журналов электронной почты, когда DEBUG равна False. См. также Настройка логирования.
Вы можете посмотреть конфигурацию логирования по умолчанию, обратившись к django/utils/log.py.
LOGGING_CONFIG
Значение по умолчанию: 'logging.config.dictConfig'
Путь к вызываемому объекту, который будет использоваться для настройки логирования в проекте Django. По умолчанию указывает на экземпляр метода конфигурации dictConfig Python.
Если вы установите LOGGING_CONFIG в None, процесс настройки логирования будет пропущен.
MANAGERS
Значение по умолчанию: [] (Пустой список)
Список в том же формате, что и ADMINS, который указывает, кому должны быть отправлены уведомления о битых ссылках, когда BrokenLinkEmailsMiddleware включён.
MEDIA_ROOT
Значение по умолчанию: '' (Пустая строка)
Абсолютный путь к каталогу файловой системы, в котором будут храниться загружаемые пользователем файлы.
Пример: "/var/www/example.com/media/"
См. также MEDIA_URL.
Предупреждение
MEDIA_ROOT и STATIC_ROOT должны иметь разные значения. До введения STATIC_ROOT было принято использовать или по умолчанию MEDIA_ROOT для обслуживания статических файлов; однако, так как это может иметь серьёзные последствия для безопасности, предусмотрена проверка для предотвращения этого.
MEDIA_URL
Значение по умолчанию: '' (Пустая строка)
URL, обрабатывающий медиа, которые обслуживаются из MEDIA_ROOT, используемый для управления хранящимися файлами. Он должен заканчиваться слешем, если он не пустой. Вам нужно будет настроить обслуживание этих файлов как в среде разработки, так и в производственной.
Если вы хотите использовать {{ MEDIA_URL }} в своих шаблонах, добавьте 'django.template.context_processors.media' в параметр 'context_processors' в TEMPLATES.
Пример: "http://media.example.com/"
Предупреждение
Существуют риски безопасности, если вы принимаете загружаемое содержимое от недоверенных пользователей! Обратитесь к разделу руководства по безопасности о безопасности содержимого, загруженного пользователем для получения подробной информации об устранении.
Предупреждение
MEDIA_URL и STATIC_URL должны иметь разные значения. См. MEDIA_ROOT для получения дополнительной информации.
Примечание
Если MEDIA_URL — относительный путь, он будет предваряться значением, предоставляемым сервером для SCRIPT_NAME (или /, если не задано). Это упрощает обслуживание приложения Django в подпути без добавления дополнительной конфигурации в настройки.
MIDDLEWARE
Значение по умолчанию: None
Список middleware для использования. См. Middleware.
MIGRATION_MODULES
Значение по умолчанию: {} (Пустой словарь)
Словарь, определяющий пакет, в котором можно найти модули миграции для каждого приложения. Значение по умолчанию этого параметра — пустой словарь, но имя пакета по умолчанию для модулей миграции — migrations.
Пример:
{"blog": "blog.db_migrations"}
В этом случае миграции, относящиеся к приложению blog, будут находиться в пакете blog.db_migrations.
Если вы передадите параметр app_label, makemigrations автоматически создаст пакет, если он ещё не существует.
При использовании None в качестве значения для приложения, Django будет рассматривать это приложение как приложение без миграций независимо от существования подмодуля migrations. Это может быть использовано, например, в файле настроек тестов для пропуска миграций во время тестирования (таблицы всё равно будут созданы для моделей приложений). Чтобы отключить миграции для всех приложений во время тестов, можно установить MIGRATE в значение False вместо. Если MIGRATION_MODULES используется в общих настройках проекта, не забудьте использовать опцию migrate --run-syncdb, если вы хотите создать таблицы для приложения.
MONTH_DAY_FORMAT
По умолчанию: 'F j'
Формат по умолчанию для полей даты на страницах изменения списков Django admin — и, возможно, в других частях системы — в тех случаях, когда отображаются только месяц и день.
Например, когда страница изменения списка Django admin фильтруется по дате, заголовок для данного дня отображает день и месяц. Разные языковые локали имеют разные форматы. Например, для американского английского будет "January 1", а для испанского — "1 Enero".
Обратите внимание, что если USE_L10N установлено в значение True, то соответствующий формат, заданный локалью, будет иметь более высокий приоритет и будет применён.
См. allowed date format strings. См. также DATE_FORMAT, DATETIME_FORMAT, TIME_FORMAT и YEAR_MONTH_FORMAT.
NUMBER_GROUPING
По умолчанию: 0
Количество цифр, сгруппированных вместе в целой части числа.
Общее использование — для отображения разделителя тысяч. Если это значение 0, то группировка чисел не будет применена. Если это значение больше 0, то THOUSAND_SEPARATOR будет использоваться в качестве разделителя между этими группами.
В некоторых локалях используется неравномерная группировка цифр, например 10,00,00,000 в en_IN. В этом случае вы можете указать последовательность с количеством размеров групп цифр, которые будут применяться. Первое число определяет размер группы, предшествующей десятичному разделителю, а каждое последующее число определяет размер предыдущих групп. Если последовательность заканчивается -1, дальнейшая группировка не выполняется. Если последовательность заканчивается 0, размер последней группы используется для остатка числа.
Пример кортежа для en_IN:
NUMBER_GROUPING = (3, 2, 0)
Обратите внимание, что если USE_L10N установлено в True, то формат, заданный локалью, будет иметь более высокий приоритет и будет применён вместо него.
См. также DECIMAL_SEPARATOR, THOUSAND_SEPARATOR и USE_THOUSAND_SEPARATOR.
PREPEND_WWW
По умолчанию: False
Следует ли добавлять поддомен “www.” к URL-адресам, у которых его нет. Это используется только в том случае, если CommonMiddleware установлен (см. Средства обработки). См. также APPEND_SLASH.
ROOT_URLCONF
По умолчанию: Не определено
Строка, представляющая полный путь импорта Python к вашему корневому URLconf, например "mydjangoapps.urls". Может быть переопределён на основе запроса путём установки атрибута urlconf на объект входящего HttpRequest запроса. Для получения подробностей см. Как Django обрабатывает запрос.
SECRET_KEY
По умолчанию: '' (пустая строка)
Секретный ключ для конкретной установки Django. Используется для криптографического шифрования и должен быть установлен в уникальное, непредсказуемое значение.
django-admin startproject автоматически добавляет случайный сгенерированный SECRET_KEY к каждому новому проекту.
Использование ключа не должно предполагать, что он является текстом или байтами. Каждое использование должно проходить через force_str() или force_bytes() для преобразования в нужный тип.
Django откажется от запуска, если SECRET_KEY не задан.
Предупреждение
Храните это значение в секрете.
Запуск Django с известным SECRET_KEY нарушает многие меры безопасности Django и может привести к эскалации привилегий и уязвимостям удалённого выполнения кода.
Секретный ключ используется для:
- Всех сессий, если вы используете любой другой бэкэнд сессий, кроме
django.contrib.sessions.backends.cache, или используете стандартный бэкэндget_session_auth_hash(). - Всех сообщений, если вы используете
CookieStorageилиFallbackStorage. - Всех токенов
PasswordResetView. - Любого использования криптографического шифрования, если не указан другой ключ.
Когда секретный ключ больше не установлен как SECRET_KEY или не содержится в SECRET_KEY_FALLBACKS, всё вышеперечисленное станет недействительным. При смене секретного ключа вы должны временно переместить старый ключ в SECRET_KEY_FALLBACKS. Секретные ключи не используются для паролей пользователей, и смена ключа не повлияет на них.
Примечание
Файл по умолчанию settings.py созданный с помощью django-admin
startproject, создаёт уникальный SECRET_KEY для удобства.
SECRET_KEY_FALLBACKS
По умолчанию: []
Список резервных секретных ключей для конкретной установки Django. Они используются для поддержки смены SECRET_KEY.
Для смены секретных ключей установите новый SECRET_KEY и переместите предыдущее значение в начало SECRET_KEY_FALLBACKS. Затем удалите старые значения из конца SECRET_KEY_FALLBACKS, когда вы будете готовы к истечению сеансов, токенов сброса пароля и так далее, использующих их.
Примечание
Операции шифрования вычислительно затратны. Наличие нескольких старых значений ключа в SECRET_KEY_FALLBACKS добавляет дополнительную нагрузку на все проверки, которые не совпадают с более ранним ключом.
Поэтому резервные значения следует удалять после соответствующего периода, позволяя осуществить смену ключа.
Использование значений секретных ключей не должно предполагать, что они являются текстом или байтами. Каждое использование должно проходить через force_str() или force_bytes() для преобразования в нужный тип.
SECURE_CONTENT_TYPE_NOSNIFF
По умолчанию: True
Если True, SecurityMiddleware устанавливает заголовок X-Content-Type-Options: nosniff во всех ответах, у которых его нет.
SECURE_CROSS_ORIGIN_OPENER_POLICY
По умолчанию: 'same-origin'
Если не установлено значение None, SecurityMiddleware устанавливает заголовок Cross-Origin Opener Policy во всех ответах, у которых его нет, в указанное значение.
SECURE_HSTS_INCLUDE_SUBDOMAINS
По умолчанию: False
Если True, SecurityMiddleware добавляет директиву includeSubDomains в заголовок HTTP Strict Transport Security. Она не действует, если SECURE_HSTS_SECONDS не установлено в ненулевое значение.
Предупреждение
Неправильная настройка может необратимо (для значения SECURE_HSTS_SECONDS) сломать ваш сайт. Сначала ознакомьтесь с документацией HTTP Strict Transport Security.
SECURE_HSTS_PRELOAD
По умолчанию: False
Если True, SecurityMiddleware добавляет директиву preload в заголовок HTTP Strict Transport Security. Она не действует, если SECURE_HSTS_SECONDS не равно нулю.
SECURE_HSTS_SECONDS
По умолчанию: 0
Если задано ненулевое целое значение, SecurityMiddleware устанавливает заголовок HTTP Strict Transport Security для всех ответов, у которых его ещё нет.
Предупреждение
Неправильная настройка может необратимо (на некоторое время) сломать ваш сайт. Сначала ознакомьтесь с документацией HTTP Strict Transport Security.
SECURE_PROXY_SSL_HEADER
По умолчанию: None
Кортеж, представляющий собой сочетание имени и значения HTTP-заголовка, указывающего на то, что запрос защищён. Это управляет поведением метода is_secure() объекта запроса.
По умолчанию, is_secure() определяет, является ли запрос защищённым, проверяя, использует ли запрашиваемый URL https://. Этот метод важен для защиты CSRF в Django и может использоваться вашим собственным кодом или сторонними приложениями.
Однако, если ваше приложение Django находится за прокси-сервером, прокси-сервер может «поглощать» информацию о том, использует ли исходный запрос HTTPS или нет. Если существует не-HTTPS соединение между прокси-сервером и Django, то is_secure() всегда будет возвращать False — даже для запросов, сделанных конечным пользователем через HTTPS. Напротив, если существует HTTPS соединение между прокси-сервером и Django, то is_secure() всегда будет возвращать True — даже для запросов, первоначально сделанных через HTTP.
В этом случае настройте свой прокси-сервер на установку пользовательского HTTP-заголовка, который сообщает Django, пришёл ли запрос через HTTPS, и установите SECURE_PROXY_SSL_HEADER таким образом, чтобы Django знал, какой заголовок искать.
Установите кортеж с двумя элементами: именем заголовка, который нужно искать, и требуемым значением. Например:
SECURE_PROXY_SSL_HEADER = ("HTTP_X_FORWARDED_PROTO", "https")
Это говорит Django доверять заголовку X-Forwarded-Proto, который приходит от нашего прокси-сервера, и что запрос гарантированно защищён (то есть он изначально пришёл через HTTPS), когда:
- значение заголовка равно
'https', или - его начальное, левое значение равно
'https'в случае списка протоколов через запятую (например,'https,http,http').
Добавлена поддержка списка протоколов через запятую в значении заголовка.
Вы должны только устанавливать эту настройку, если вы контролируете свой прокси-сервер или имеете гарантию, что он должным образом устанавливает/удаляет этот заголовок.
Обратите внимание, что заголовок должен быть в формате, используемом request.META — все заглавные буквы и, вероятно, начинающиеся с HTTP_. (Помните, что Django автоматически добавляет 'HTTP_' в начало имён заголовков x перед тем, как сделать заголовок доступным в request.META.)
Предупреждение
Изменение этой настройки может поставить под угрозу безопасность вашего сайта. Убедитесь, что вы полностью понимаете свою настройку перед её изменением.
Убедитесь, что ВСЕ из следующего верно перед установкой (предполагая значения из примера выше):
- Ваше приложение Django находится за прокси-сервером.
- Ваш прокси-сервер удаляет заголовок
X-Forwarded-Protoиз всех входящих запросов, даже когда он содержит список протоколов через запятую. Другими словами, если конечные пользователи включают этот заголовок в свои запросы, прокси-сервер его отбросит. - Ваш прокси-сервер устанавливает заголовок
X-Forwarded-Protoи отправляет его в Django, но только для запросов, которые изначально пришли через HTTPS.
Если что-либо из этого не верно, вы должны оставить эту настройку значением None и найти другой способ определения HTTPS, возможно, через пользовательский middleware.
SECURE_REDIRECT_EXEMPT
По умолчанию: [] (Пустой список)
Если путь к URL соответствует регулярному выражению в этом списке, запрос не будет перенаправлен на HTTPS. SecurityMiddleware удаляет начальные слэши из путей URL, поэтому шаблоны не должны их включать, например, SECURE_REDIRECT_EXEMPT = [r'^no-ssl/$', …]. Если SECURE_SSL_REDIRECT равно False, эта настройка не имеет эффекта.
SECURE_REFERRER_POLICY
По умолчанию: 'same-origin'
Если настроено, SecurityMiddleware устанавливает заголовок Referrer Policy во всех ответах, у которых его ещё нет, со значением, указанным в настройке.
SECURE_SSL_HOST
По умолчанию: None
Если строка (например, secure.example.com), все перенаправления SSL будут направлены на этот хост, а не на первоначально запрошенный хост (например, www.example.com). Если SECURE_SSL_REDIRECT равно False, эта настройка не имеет эффекта.
SECURE_SSL_REDIRECT
По умолчанию: False
Если True, SecurityMiddleware перенаправляет все запросы, не использующие HTTPS, на HTTPS (за исключением тех URL, которые соответствуют регулярному выражению, указанному в SECURE_REDIRECT_EXEMPT).
Примечание
Если установка этого значения в True приводит к бесконечным перенаправлениям, это, вероятно, означает, что ваш сайт работает за прокси-сервером, который не может определить, какие запросы защищены, а какие нет. Ваш прокси-сервер, скорее всего, устанавливает заголовок для указания защищённых запросов; вы можете исправить проблему, выяснив, какой это заголовок, и соответствующим образом настроив настройку SECURE_PROXY_SSL_HEADER.
SERIALIZATION_MODULES
По умолчанию: Не определено
Словарь модулей, содержащих определения сериализаторов (указанные как строки), индексированные строковым идентификатором типа сериализации. Например, чтобы определить сериализатор YAML, используйте:
SERIALIZATION_MODULES = {"yaml": "path.to.yaml_serializer"}
SERVER_EMAIL
По умолчанию: 'root@localhost'
Электронный адрес, с которого отправляются сообщения об ошибках, например, отправленные адресатам ADMINS и MANAGERS.
Почему мои письма отправляются с другого адреса?
Этот адрес используется только для сообщений об ошибках. Это не адрес, с которого отправляются обычные электронные письма с помощью send_mail(); для этого см. DEFAULT_FROM_EMAIL.
SHORT_DATE_FORMAT
По умолчанию: 'm/d/Y' (например, 12/31/2003)
Доступный формат, который можно использовать для отображения полей даты на шаблонах. Обратите внимание, что если USE_L10N установлено в True, то соответствующий формат, заданный локалью, имеет более высокий приоритет и будет применён. См. allowed date format strings.
См. также DATE_FORMAT и SHORT_DATETIME_FORMAT.
SHORT_DATETIME_FORMAT
По умолчанию: 'm/d/Y P' (например, 12/31/2003 4 p.m.)
Доступный формат, который можно использовать для отображения полей datetime на шаблонах. Обратите внимание, что если USE_L10N установлено в True, то соответствующий формат, заданный локалью, имеет более высокий приоритет и будет применён. См. allowed date format strings.
См. также DATE_FORMAT и SHORT_DATE_FORMAT.
SIGNING_BACKEND
По умолчанию: 'django.core.signing.TimestampSigner'
Модуль, используемый для подписи куки и других данных.
См. также документацию по Криптографической подписи.
SILENCED_SYSTEM_CHECKS
По умолчанию: [] (Пустой список)
Список идентификаторов сообщений, генерируемых системой проверки (например, ["models.W001"]), которые вы хотите постоянно игнорировать. Заглушённые проверки не будут выводиться в консоль.
См. также документацию по Системе проверки.
STORAGES
По умолчанию:
{
"default": {
"BACKEND": "django.core.files.storage.FileSystemStorage",
},
"staticfiles": {
"BACKEND": "django.contrib.staticfiles.storage.StaticFilesStorage",
},
}
Словарь, содержащий настройки всех хранилищ, которые будут использоваться с Django. Это вложенный словарь, содержимое которого сопоставляет псевдоним хранилища со словарем, содержащим параметры для отдельного хранилища.
Хранилища могут иметь любой выбранный вами псевдоним. Однако существуют два псевдонима со специальным значением:
-
defaultдля управления файлами.'django.core.files.storage.FileSystemStorage'является движком хранения по умолчанию. -
staticfilesдля управления статическими файлами.'django.contrib.staticfiles.storage.StaticFilesStorage'является движком хранения по умолчанию.
Следующий пример settings.py фрагмента определяет пользовательское хранилище файлов, называемое example:
STORAGES = {
# ...
"example": {
"BACKEND": "django.core.files.storage.FileSystemStorage",
"OPTIONS": {
"location": "/example",
"base_url": "/example/",
},
},
}
OPTIONS передаются в BACKEND при инициализации в **kwargs.
Готовый экземпляр хранилищ бэкэндов можно получить из django.core.files.storage.storages. Используйте ключ, соответствующий определению бэкэнда в STORAGES.
TEMPLATES
По умолчанию: [] (Пустой список)
Список, содержащий настройки всех движков шаблонов, которые будут использоваться с Django. Каждый элемент списка — это словарь, содержащий параметры для отдельного движка.
Вот настройка, которая сообщает движку Django шаблонов загружать шаблоны из подкаталога templates внутри каждой установленной программы:
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"APP_DIRS": True,
},
]
Следующие параметры доступны для всех бэкэндов.
BACKEND
По умолчанию: Не определено
Используемый бэкэнд шаблонов. Встроенные движки шаблонов:
'django.template.backends.django.DjangoTemplates''django.template.backends.jinja2.Jinja2'
Вы можете использовать движок шаблонов, который не поставляется с Django, установив BACKEND в полном пути (например, 'mypackage.whatever.Backend').
NAME
По умолчанию: см. ниже
Псевдоним для данного движка шаблонов. Это идентификатор, который позволяет выбрать движок для рендеринга. Псевдонимы должны быть уникальными для всех настроенных движков шаблонов.
По умолчанию он равен имени модуля, определяющего класс движка, т.е. предпоследний элемент BACKEND, если он не указан. Например, если бэкэнд — 'mypackage.whatever.Backend', то его имя по умолчанию — 'whatever'.
DIRS
По умолчанию: [] (Пустой список)
Директории, в которых движок должен искать исходные файлы шаблонов в порядке поиска.
APP_DIRS
По умолчанию: False
Должен ли движок искать исходные файлы шаблонов внутри установленных приложений.
Примечание
По умолчанию создаваемый файл settings.py по django-admin
startproject устанавливает 'APP_DIRS': True.
OPTIONS
По умолчанию: {} (Пустой словарь)
Дополнительные параметры для передачи бэкэнду шаблонов. Доступные параметры зависят от бэкэнда шаблонов. См. DjangoTemplates и Jinja2 для параметров встроенных бэкэндов.
TEST_RUNNER
По умолчанию: 'django.test.runner.DiscoverRunner'
Имя класса, используемого для запуска набора тестов. См. Использование различных фреймворков тестирования.
TEST_NON_SERIALIZED_APPS
По умолчанию: [] (Пустой список)
Для восстановления состояния базы данных между тестами для TransactionTestCase и баз данных с бэкендами без транзакций Django будет сериализовать содержимое всех приложений при запуске набора тестов, чтобы затем перезагрузить его из этой копии перед выполнением тестов, которые в этом нуждаются.
Это замедляет время запуска запуска тестов; если у вас есть приложения, которые, по вашим предположениям, не нуждаются в этой функции, вы можете добавить их полные имена (например, 'django.contrib.contenttypes') сюда, чтобы исключить их из этого процесса сериализации.
THOUSAND_SEPARATOR
По умолчанию: ',' (Запятая)
Разделитель тысяч по умолчанию, используемый при форматировании чисел. Эта настройка используется только тогда, когда USE_THOUSAND_SEPARATOR равна True и NUMBER_GROUPING больше 0.
Обратите внимание, что если USE_L10N установлено в True, тогда форматирование, определенное в локали, имеет более высокий приоритет и будет применено вместо него.
См. также NUMBER_GROUPING, DECIMAL_SEPARATOR и USE_THOUSAND_SEPARATOR.
TIME_FORMAT
По умолчанию: 'P' (например, 4 p.m.)
Формат по умолчанию для отображения полей времени в любой части системы. Обратите внимание, что если USE_L10N установлено в True, тогда форматирование, определенное в локали, имеет более высокий приоритет и будет применено вместо него. См. allowed date format strings.
См. также DATE_FORMAT и DATETIME_FORMAT.
TIME_INPUT_FORMATS
По умолчанию:
[
"%H:%M:%S", # '14:30:59'
"%H:%M:%S.%f", # '14:30:59.000200'
"%H:%M", # '14:30'
]
Список форматов, которые будут приниматься при вводе данных в поле времени. Форматы будут проверяться в порядке, используя первый допустимый. Обратите внимание, что эти строки формата используют синтаксис модуля Python datetime, а не строки формата из фильтра шаблона date.
Когда USE_L10N равняется True, форматирование, определенное в локали, имеет более высокий приоритет и будет применено вместо него.
См. также DATE_INPUT_FORMATS и DATETIME_INPUT_FORMATS.
TIME_ZONE
По умолчанию: 'America/Chicago'
Строка, представляющая часовой пояс для данной установки. См. список часовых поясов.
Примечание
С момента первого выпуска Django с TIME_ZONE, установленным на 'America/Chicago', глобальная настройка (используемая, если ничего не определено в файле проекта settings.py остаётся 'America/Chicago' для обратной совместимости. Шаблоны новых проектов по умолчанию устанавливают 'UTC'.
Обратите внимание, что это не обязательно часовой пояс сервера. Например, один сервер может обслуживать несколько сайтов, работающих на Django, каждый с отдельной настройкой часового пояса.
Когда USE_TZ установлено на False, это часовой пояс, в котором Django будет хранить все даты и время. Когда USE_TZ установлено на True, это часовой пояс по умолчанию, который Django будет использовать для отображения дат и времени в шаблонах и для интерпретации дат и времени, введённых в формах.
В средах Unix (где реализован time.tzset()), Django устанавливает переменную os.environ['TZ'] на часовой пояс, указанный в настройке TIME_ZONE. Таким образом, все ваши представления и модели автоматически будут работать в этом часовом поясе. Однако Django не будет устанавливать переменную среды TZ, если вы используете ручной вариант конфигурации, как описано в ручной конфигурации настроек. Если Django не установит переменную среды TZ, вам нужно позаботиться о том, чтобы ваши процессы работали в правильной среде.
Примечание
Django не может надёжно использовать альтернативные часовые пояса в среде Windows. Если вы запускаете Django в Windows, TIME_ZONE должна быть установлена в соответствии с системным часовым поясом.
USE_DEPRECATED_PYTZ
По умолчанию: False
Булево значение, которое указывает, следует ли использовать pytz, а не zoneinfo, в качестве реализации часового пояса по умолчанию.
Устарело начиная с версии 4.0: Эта переходная настройка устарела. Поддержка использования pytz будет удалена в Django 5.0.
USE_I18N
По умолчанию: True
Булево значение, указывающее, должен ли быть включён механизм перевода Django. Это позволяет выключить его для повышения производительности. Если значение установлено в False, Django выполнит некоторые оптимизации, чтобы не загружать систему перевода.
См. также LANGUAGE_CODE, USE_L10N и USE_TZ.
Примечание
Файл по умолчанию settings.py , созданный командой django-admin
startproject, содержит USE_I18N = True для удобства.
USE_L10N
По умолчанию: True
Булево значение, указывающее, будет ли по умолчанию включена локализация форматов данных. Если значение установлено в True, Django будет отображать числа и даты в формате текущего языка.
См. также LANGUAGE_CODE, USE_I18N и USE_TZ.
Устарело начиная с версии 4.0: Настройка устарела. Начиная с Django 5.0, локализация форматов данных всегда включена. Например, Django будет отображать числа и даты в формате текущего языка.
USE_THOUSAND_SEPARATOR
По умолчанию: False
Булево значение, указывающее, следует ли отображать числа с разделителем тысяч. При значении True и при том, что USE_L10N также установлено в True, Django отформатирует числа, используя настройки NUMBER_GROUPING и THOUSAND_SEPARATOR. Последние две настройки также могут быть заданы локалью, которая имеет приоритет.
См. также DECIMAL_SEPARATOR, NUMBER_GROUPING и THOUSAND_SEPARATOR.
USE_TZ
По умолчанию: False
Примечание
В Django 5.0 значение по умолчанию изменится с False на True.
Булево значение, указывающее, будут ли даты и время по умолчанию учитывать часовой пояс. Если значение установлено в True, Django будет использовать даты и время, учитывающие часовой пояс, во внутренних расчётах.
Когда USE_TZ равно False, Django будет использовать даты и время без учёта часового пояса в локальном времени, за исключением случаев парсинга строк в формате ISO 8601, где информация о часовом поясе всегда сохраняется, если она присутствует.
См. также TIME_ZONE, USE_I18N и USE_L10N.
Примечание
Файл по умолчанию settings.py , созданный командой django-admin startproject, содержит USE_TZ = True для удобства.
USE_X_FORWARDED_HOST
По умолчанию: False
Булево значение, указывающее, следует ли использовать заголовок X-Forwarded-Host в приоритете перед заголовком Host. Это должно быть включено только если используется прокси, который устанавливает этот заголовок.
Эта настройка имеет приоритет над USE_X_FORWARDED_PORT. Согласно RFC 7239#section-5.3, заголовок X-Forwarded-Host может содержать номер порта, в таком случае вы не должны использовать USE_X_FORWARDED_PORT.
USE_X_FORWARDED_PORT
По умолчанию: False
Булево значение, указывающее, следует ли использовать заголовок X-Forwarded-Port в приоритете перед заголовком SERVER_PORT META переменной. Это должно быть включено только если используется прокси, который устанавливает этот заголовок.
USE_X_FORWARDED_HOST имеет приоритет над этой настройкой.
WSGI_APPLICATION
По умолчанию: None
Полный путь к объекту WSGI-приложения Python, который будут использовать встроенные серверы Django (например, runserver). Команда управления django-admin
startproject создаст стандартный файл wsgi.py с вызываемым объектом application в нём и установит данную настройку на этот объект application.
Если не задано, будет использовано значение, возвращаемое django.core.wsgi.get_wsgi_application(). В этом случае поведение runserver будет идентично предыдущим версиям Django.
YEAR_MONTH_FORMAT
По умолчанию: 'F Y'
Формат по умолчанию для полей даты на страницах изменения списков в Django админке, когда отображаются только год и месяц.
Например, при фильтрации страницы списка изменений Django админки по дате, заголовок для данного месяца отображает месяц и год. Разные языки имеют разные форматы. Например, в английском (США) будет «Январь 2006», в то время как в другой локали может быть «2006/Январь».
Обратите внимание, что если USE_L10N установлено в True, тогда соответствующий формат, диктуемый локалью, имеет более высокий приоритет и будет применён.
См. allowed date format strings. См. также DATE_FORMAT, DATETIME_FORMAT, TIME_FORMAT и MONTH_DAY_FORMAT.
X_FRAME_OPTIONS
По умолчанию: 'DENY'
Значение по умолчанию для заголовка X-Frame-Options, используемого XFrameOptionsMiddleware. Смотрите документацию защиты от clickjacking.
Auth
Настройки для django.contrib.auth.
AUTHENTICATION_BACKENDS
По умолчанию: ['django.contrib.auth.backends.ModelBackend']
Список классов бэкендов аутентификации (в виде строк), используемых для аутентификации пользователя. Подробности смотрите в документации по бэкендам аутентификации.
AUTH_USER_MODEL
По умолчанию: 'auth.User'
Модель, используемая для представления пользователя. См. Замену пользовательской модели.
Предупреждение
Вы не можете изменить настройку AUTH_USER_MODEL в течение срока действия проекта (т. е. после создания и миграции моделей, которые от неё зависят), без значительных усилий. Она предназначена для установки на начальном этапе проекта, а модель, на которую она ссылается, должна быть доступна в первой миграции приложения, в котором она находится. Дополнительные сведения см. в документации по замене пользовательской модели.
LOGIN_REDIRECT_URL
По умолчанию: '/accounts/profile/'
URL или имя URL-шаблона, куда перенаправляются запросы после входа в систему, когда у LoginView отсутствует параметр next GET.
LOGIN_URL
По умолчанию: '/accounts/login/'
URL или имя URL-шаблона, куда перенаправляются запросы для входа в систему при использовании декоратора login_required(), LoginRequiredMixin или AccessMixin.
LOGOUT_REDIRECT_URL
По умолчанию: None
URL или имя URL-шаблона, куда перенаправляются запросы после выхода из системы, если у LogoutView отсутствует атрибут next_page. Если None, перенаправление не будет выполнено, и будет отображено представление выхода.
PASSWORD_RESET_TIMEOUT
По умолчанию: 259200 (3 дня, в секундах)
Количество секунд, в течение которых действителен ссылкой на сброс пароля.
Используется в PasswordResetConfirmView.
Примечание
Уменьшение значения этого таймаута не оказывает никакого влияния на способность злоумышленника выполнить brute-force атаку на токен сброса пароля. Токены разработаны для защиты от brute-force атак без таймаута.
Этот таймаут существует для защиты от некоторых маловероятных сценариев атак, таких как получение доступа к архивам электронной почты, которые могут содержать старые, неиспользуемые токены сброса пароля.
PASSWORD_HASHERS
По умолчанию:
[
"django.contrib.auth.hashers.PBKDF2PasswordHasher",
"django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher",
"django.contrib.auth.hashers.Argon2PasswordHasher",
"django.contrib.auth.hashers.BCryptSHA256PasswordHasher",
]
AUTH_PASSWORD_VALIDATORS
По умолчанию: [] (пустой список)
Список валидаторов, используемых для проверки сложности паролей пользователей. Более подробную информацию см. в разделе Валидация паролей. По умолчанию валидация не выполняется и все пароли принимаются.
Сообщения
Настройки для django.contrib.messages.
MESSAGE_LEVEL
По умолчанию: messages.INFO
Устанавливает минимальный уровень сообщений, который будет записываться фреймворком сообщений. Более подробную информацию см. в разделе уровни сообщений.
Важно
Если вы переопределяете MESSAGE_LEVEL в файле настроек и полагаетесь на какие-либо встроенные константы, вы должны напрямую импортировать модуль констант, чтобы избежать потенциальных циклических импортов, например:
from django.contrib.messages import constants as message_constants MESSAGE_LEVEL = message_constants.DEBUG
При необходимости вы можете указать числовые значения констант непосредственно в соответствии со значениями в вышеприведенной таблице констант.
MESSAGE_STORAGE
По умолчанию: 'django.contrib.messages.storage.fallback.FallbackStorage'
Управляет тем, где Django хранит данные сообщений. Допустимые значения:
'django.contrib.messages.storage.fallback.FallbackStorage''django.contrib.messages.storage.session.SessionStorage''django.contrib.messages.storage.cookie.CookieStorage'
См. хранилища данных сообщений для получения дополнительной информации.
Хранилища, использующие файлы cookie — CookieStorage и FallbackStorage — используют значение SESSION_COOKIE_DOMAIN, SESSION_COOKIE_SECURE и SESSION_COOKIE_HTTPONLY при установке файлов cookie.
MESSAGE_TAGS
{
messages.DEBUG: "debug",
messages.INFO: "info",
messages.SUCCESS: "success",
messages.WARNING: "warning",
messages.ERROR: "error",
}
Это устанавливает отображение уровня сообщения на тег сообщения, который обычно отображается как класс CSS в HTML. Если вы укажете значение, оно будет расширено по умолчанию. Это означает, что вам нужно указать только те значения, которые необходимо переопределить. Более подробную информацию см. в разделе Отображение сообщений выше.
Важно
Если вы переопределяете MESSAGE_TAGS в файле настроек и полагаетесь на какие-либо встроенные константы, вы должны напрямую импортировать модуль constants , чтобы избежать потенциальных циклических импортов, например:
from django.contrib.messages import constants as message_constants
MESSAGE_TAGS = {message_constants.INFO: ""}
При необходимости вы можете указать числовые значения констант непосредственно в соответствии со значениями в вышеприведенной таблице констант.
Сессии
Настройки для django.contrib.sessions.
SESSION_CACHE_ALIAS
По умолчанию: 'default'
Если вы используете хранилище сессий на основе кэша, это выбирает кэш для использования.
SESSION_COOKIE_AGE
Срок действия файлов cookie сессий в секундах.
SESSION_COOKIE_DOMAIN
Домен для использования файлов cookie сессий. Установите это значение, например, "example.com", для файлов cookie между доменами, или используйте None для стандартного файла cookie домена.
Для использования файлов cookie между доменами с CSRF_USE_SESSIONS необходимо включить ведущую точку (например, ".example.com") для учета проверки referer в middleware CSRF.
Будьте осторожны при обновлении этой настройки на сайте в режиме работы. Если вы обновите эту настройку, чтобы включить файлы cookie между доменами на сайте, который ранее использовал стандартные файлы cookie домена, существующие файлы cookie пользователей будут установлены на старый домен. В результате они не смогут войти до тех пор, пока эти файлы cookie не будут удалены.
Эта настройка также влияет на файлы cookie, установленные django.contrib.messages.
SESSION_COOKIE_HTTPONLY
Использовать флаг HttpOnly для файла cookie сессии. Если это значение установлено в True, клиентский JavaScript не сможет получить доступ к файлу cookie сессии.
HttpOnly — это флаг, включенный в заголовке HTTP ответа Set-Cookie. Он является частью RFC 6265#section-4.1.2.6 стандарта для файлов cookie и может быть полезным способом для уменьшения риска доступа к защищенным данным файлов cookie со стороны клиентского сценария.
Это делает менее тривиальным для злоумышленника масштабировать уязвимость XSS до полного захвата сессии пользователя. Нет много хороших причин для отключения этого. Ваш код не должен считывать файлы cookie сессий из JavaScript.
SESSION_COOKIE_NAME
Имя файла cookie для использования в сессиях. Вы можете выбрать любое имя (при условии, что оно отличается от других имён файлов cookie в вашем приложении).
SESSION_COOKIE_PATH
Путь, установленный в файле cookie сессии. Он должен соответствовать пути URL вашего Django приложения или быть предком этого пути.
Это полезно, если у вас несколько экземпляров Django, работающих под одним и тем же именем хоста. Они могут использовать разные пути для файлов cookie, и каждый экземпляр будет видеть только свой собственный файл cookie сессии.
SESSION_COOKIE_SAMESITE
Значение флага SameSite для файла cookie сессии. Этот флаг предотвращает отправку файла cookie в межсайтовые запросы, тем самым предотвращая атаки CSRF и делая невозможным некоторые методы кражи файла cookie сессии.
Возможные значения для настройки:
-
'Strict': предотвращает отправку файла cookie браузером на целевой сайт во всех контекстах межсайтового просмотра, даже при переходе по обычной ссылке.Например, для сайта типа GitHub, это означает, что если вошедший в систему пользователь переходит по ссылке на закрытый проект GitHub, опубликованный на корпоративном форуме обсуждений или в письме, GitHub не получит файл cookie сессии, и пользователь не сможет получить доступ к проекту. Веб-сайт банка, однако, скорее всего, не хочет разрешать ссылки на любые транзакционные страницы из внешних сайтов, поэтому флаг
'Strict'будет подходящим. -
'Lax'(по умолчанию): обеспечивает баланс между безопасностью и удобством использования для веб-сайтов, которые хотят сохранить сессию вошедшего пользователя после того, как пользователь перейдет по ссылке с внешнего сайта.В сценарии GitHub файл cookie сессии будет разрешен при переходе по обычной ссылке с внешнего веб-сайта и будет заблокирован в методах запросов, подверженных CSRF (например,
POST). -
'None'(строка): файл cookie сессии будет отправлен со всеми запросами на одном сайте и с других сайтов. -
False: отключает флаг.
Примечание
Современные браузеры обеспечивают более безопасную политику по умолчанию для флага SameSite и предполагают Lax для файлов cookie без явного значения.
SESSION_COOKIE_SECURE
Использовать защищенный файл cookie для файла cookie сессии. Если это значение установлено в True, файл cookie будет помечен как «безопасный», что означает, что браузеры могут гарантировать, что файл cookie отправляется только по HTTPS-соединению.
Оставление этой настройки выключенной — не лучшая идея, так как злоумышленник может перехватить незашифрованный файл cookie сессии с помощью анализатора пакетов и использовать его для захвата сессии пользователя.
SESSION_ENGINE
По умолчанию: 'django.contrib.sessions.backends.db'
Управляет тем, где Django хранит данные сессии. Включенные движки:
'django.contrib.sessions.backends.db''django.contrib.sessions.backends.file''django.contrib.sessions.backends.cache''django.contrib.sessions.backends.cached_db''django.contrib.sessions.backends.signed_cookies'
См. Настройка движка сессий для получения дополнительной информации.
SESSION_EXPIRE_AT_BROWSER_CLOSE
По умолчанию: False
Устанавливает, нужно ли истекать сессии при закрытии браузера пользователем. См. Сессии на период работы браузера против постоянных сессий.
SESSION_FILE_PATH
По умолчанию: None
Если используется файловое хранилище сессий, это задаёт каталог, в котором Django будет хранить данные сессии. При использовании значения по умолчанию (None) Django будет использовать стандартный временный каталог системы.
SESSION_SAVE_EVERY_REQUEST
По умолчанию: False
Устанавливает, нужно ли сохранять данные сессии на каждом запросе. Если это значение False (по умолчанию), то данные сессии будут сохранены только в том случае, если они были изменены — то есть, если какое-либо из значений словаря было присвоено или удалено. Пустые сессии не будут созданы, даже если эта настройка активна.
SESSION_SERIALIZER
По умолчанию: 'django.contrib.sessions.serializers.JSONSerializer'
Полный путь импорта класса сериализатора для сериализации данных сессии. Включённый сериализатор:
'django.contrib.sessions.serializers.JSONSerializer'
См. Сериализация сессии для получения подробностей.
Сайты
Настройки для django.contrib.sites.
SITE_ID
По умолчанию: Не определено
Идентификатор текущего сайта в виде целого числа из таблицы базы данных django_site. Это используется для того, чтобы данные приложений могли подключаться к определённым сайтам, и одна база данных могла управлять контентом для нескольких сайтов.
Статические файлы
Настройки для django.contrib.staticfiles.
STATIC_ROOT
По умолчанию: None
Абсолютный путь к каталогу, в который collectstatic соберет статические файлы для развертывания.
Пример: "/var/www/example.com/static/"
Если приложение staticfiles включено (как в шаблон проекта по умолчанию), команда управления collectstatic соберет статические файлы в этот каталог. Подробнее о использовании см. руководство по управлению статическими файлами.
Предупреждение
Это должен быть первоначально пустой целевой каталог для сбора статических файлов из их постоянных расположений в один каталог для удобства развертывания; это не место для постоянного хранения статических файлов. Вы должны хранить их в каталогах, которые будут находиться в staticfiles’s finders, которые по умолчанию — это подкаталоги приложения 'static/' и любые каталоги, которые вы включаете в STATICFILES_DIRS.
STATIC_URL
По умолчанию: None
URL для использования при ссылке на статические файлы, расположенные в STATIC_ROOT.
Пример: "static/" или "http://static.example.com/"
Если не None, это будет использоваться в качестве базового пути для определений активов (класс Media ) и приложения staticfiles.
Он должен заканчиваться слешем, если задано ненулевое значение.
Возможно, вам нужно настроить эти файлы для обработки в режиме разработки, и обязательно потребуется сделать это в режиме производства.
Примечание
Если STATIC_URL — это относительный путь, он будет предваряться предоставленным сервером значением SCRIPT_NAME (или /, если не задано). Это упрощает обработку приложения Django в подпути без добавления дополнительной конфигурации в настройки.
STATICFILES_DIRS
По умолчанию: [] (Пустой список)
Эта настройка определяет дополнительные расположения, которые приложение staticfiles будет просматривать, если поиск FileSystemFinder включён, например, при использовании команды collectstatic или findstatic управления или при использовании представления для обслуживания статических файлов.
Это должно быть установлено в список строк, содержащих полные пути к дополнительным каталогам файлов, например:
STATICFILES_DIRS = [
"/home/special.polls.com/polls/static",
"/home/polls.com/polls/static",
"/opt/webfiles/common",
]
Обратите внимание, что эти пути должны использовать слэши Unix-стиля, даже в Windows (например, "C:/Users/user/mysite/extra_static_content").
Префиксы (необязательно)
В случае, если вы хотите сослаться на файлы в одном из расположений с дополнительным пространством имён, вы можете необязательно предоставить префикс как (prefix, path) кортежи, например:
STATICFILES_DIRS = [
# ...
("downloads", "/opt/webfiles/stats"),
]
Например, предположим, что STATIC_URL установлено на 'static/', команда управления collectstatic соберет файлы “stats” в подкаталоге 'downloads' каталога STATIC_ROOT.
Это позволит вам сослаться на локальный файл '/opt/webfiles/stats/polls_20101022.tar.gz' с '/static/downloads/polls_20101022.tar.gz' в ваших шаблонах, например:
<a href="{% static 'downloads/polls_20101022.tar.gz' %}">
STATICFILES_STORAGE
По умолчанию: 'django.contrib.staticfiles.storage.StaticFilesStorage'
Движок хранения файлов для использования при сборе статических файлов с помощью команды управления collectstatic.
Готовый экземпляр хранилища, определённого в этой настройке, можно найти под ключом staticfiles в django.core.files.storage.storages.
Пример см. в Обработке статических файлов из облачного сервиса или CDN.
Устаревшее с версии 4.2: Эта настройка устарела. Начиная с Django 4.2, движок хранения статических файлов можно настроить с помощью настройки STORAGES под ключом staticfiles.
STATICFILES_FINDERS
По умолчанию:
[
"django.contrib.staticfiles.finders.FileSystemFinder",
"django.contrib.staticfiles.finders.AppDirectoriesFinder",
]
Список поставщиков поиска, которые знают, как найти статические файлы в разных местах.
По умолчанию будут найдены файлы, сохранённые в настройке STATICFILES_DIRS (используя django.contrib.staticfiles.finders.FileSystemFinder) и в подкаталоге static каждого приложения (используя django.contrib.staticfiles.finders.AppDirectoriesFinder). Если присутствуют несколько файлов с одинаковым именем, будет использован первый найденный файл.
Один поставщик поиска отключен по умолчанию: django.contrib.staticfiles.finders.DefaultStorageFinder. Если его добавить в вашу настройку STATICFILES_FINDERS, он будет искать статические файлы в стандартном хранилище файлов, определённом ключом default в настройке STORAGES.
Примечание
При использовании поставщика поиска AppDirectoriesFinder, убедитесь, что ваши приложения могут быть найдены staticfiles, добавив приложение в настройку INSTALLED_APPS вашего сайта.
Поставщики поиска статических файлов в настоящее время считаются интерфейсом закрытого использования, поэтому этот интерфейс не документируется.
Индекс настроек ядра
Кэш
База данных
Отладка
Почта
ADMINSDEFAULT_CHARSETDEFAULT_FROM_EMAILEMAIL_BACKENDEMAIL_FILE_PATHEMAIL_HOSTEMAIL_HOST_PASSWORDEMAIL_HOST_USEREMAIL_PORTEMAIL_SSL_CERTFILEEMAIL_SSL_KEYFILEEMAIL_SUBJECT_PREFIXEMAIL_TIMEOUTEMAIL_USE_LOCALTIMEEMAIL_USE_TLSMANAGERSSERVER_EMAIL
Обработка ошибок
DEFAULT_EXCEPTION_REPORTERDEFAULT_EXCEPTION_REPORTER_FILTERIGNORABLE_404_URLSMANAGERSSILENCED_SYSTEM_CHECKS
Настройки загрузки файлов
DEFAULT_FILE_STORAGEFILE_UPLOAD_HANDLERSFILE_UPLOAD_MAX_MEMORY_SIZEFILE_UPLOAD_PERMISSIONSFILE_UPLOAD_TEMP_DIRMEDIA_ROOTMEDIA_URLSTORAGES
Формы
Глобализация (i18n/l10n)
DATE_FORMATDATE_INPUT_FORMATSDATETIME_FORMATDATETIME_INPUT_FORMATSDECIMAL_SEPARATORFIRST_DAY_OF_WEEKFORMAT_MODULE_PATHLANGUAGE_CODELANGUAGE_COOKIE_AGELANGUAGE_COOKIE_DOMAINLANGUAGE_COOKIE_HTTPONLYLANGUAGE_COOKIE_NAMELANGUAGE_COOKIE_PATHLANGUAGE_COOKIE_SAMESITELANGUAGE_COOKIE_SECURELANGUAGESLANGUAGES_BIDILOCALE_PATHSMONTH_DAY_FORMATNUMBER_GROUPINGSHORT_DATE_FORMATSHORT_DATETIME_FORMATTHOUSAND_SEPARATORTIME_FORMATTIME_INPUT_FORMATSTIME_ZONEUSE_I18NUSE_L10NUSE_THOUSAND_SEPARATORUSE_TZYEAR_MONTH_FORMAT
HTTP
DATA_UPLOAD_MAX_MEMORY_SIZEDATA_UPLOAD_MAX_NUMBER_FIELDSDATA_UPLOAD_MAX_NUMBER_FILESDEFAULT_CHARSETDISALLOWED_USER_AGENTSFORCE_SCRIPT_NAMEINTERNAL_IPSMIDDLEWARE- Безопасность
SIGNING_BACKENDUSE_X_FORWARDED_HOSTUSE_X_FORWARDED_PORTWSGI_APPLICATION
Ведение журнала
Модели
Безопасность
- Защита от межсайтовых поддельных запросов
SECRET_KEYSECRET_KEY_FALLBACKSX_FRAME_OPTIONS
Сериализация
Шаблоны
Тестирование
- База данных:
TEST TEST_NON_SERIALIZED_APPSTEST_RUNNER
URL
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/4.2/ref/settings/