Spec-Zone.ru › Django 3.2

Настройки

  • Основные настройки
  • Авторизация
  • Сообщения
  • Сессии
  • Сайты
  • Статические файлы
  • Индекс основных настроек по темам

Предупреждение

Будьте осторожны при перезаписи настроек, особенно когда значение по умолчанию — это непустой список или словарь, например, STATICFILES_FINDERS. Убедитесь, что вы сохранили компоненты, необходимые для функций Django, которые вы хотите использовать.

Основные настройки

Вот список настроек, доступных в ядре Django, и их значения по умолчанию. Настройки, предоставленные приложениями contrib, перечислены ниже, за которыми следует тематический индекс основных настроек. Для вводного материала см. руководство по теме настроек.

ABSOLUTE_URL_OVERRIDES

Значение по умолчанию: {} (Пустой словарь)

Словарь, сопоставляющий "app_label.model_name" строки с функциями, которые принимают объект модели и возвращают его URL. Это способ вставки или перезаписи get_absolute_url() методов на основе конкретной установки. Пример:

ABSOLUTE_URL_OVERRIDES = {
    'blogs.weblog': 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).

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, вы обходите эту защиту безопасности.

Изменено в Django 3.1:

Если ALLOWED_HOSTS пустой, а DEBUG=True, поддомены localhost были разрешены.

APPEND_SLASH

Значение по умолчанию: True

Если установлено в True, если URL запроса не соответствует ни одному из шаблонов в URLconf и не заканчивается косой чертой, выполняется перенаправление HTTP на тот же URL с добавленной косой чертой. Обратите внимание, что перенаправление может привести к потере любых данных, отправленных в запросе POST.

Настройка APPEND_SLASH используется только в том случае, если установлено CommonMiddleware (см. Промежуточное ПО). См. также 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, установив BACKEND на полное квалифицированное имя класса кэш-бекенда (например, mypackage.backends.whatever.WhateverCache).

Изменено в Django 3.2:

Бекенд PyMemcacheCache был добавлен.

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, записи кэша не будут истекать.

VERSION

Значение по умолчанию: 1

Номер версии по умолчанию для ключей кэша, сгенерированных сервером Django.

См. документацию по кэшу для получения дополнительной информации.

CACHE_MIDDLEWARE_ALIAS

Значение по умолчанию: 'default'

Подключение к кэшу, используемое для промежуточного ПО кэша.

CACHE_MIDDLEWARE_KEY_PREFIX

Значение по умолчанию: '' (Пустая строка)

Строка, которая будет добавлена в качестве префикса к ключам кэша, генерируемым промежуточным ПО кэша. Этот префикс комбинируется с настройкой KEY_PREFIX; он не заменяет его.

См. рамку кэширования Django.

CACHE_MIDDLEWARE_SECONDS

По умолчанию: 600

Значение по умолчанию для количества секунд кеширования страницы для кеширования по сайту.

См. фреймворк кэширования Django.

CSRF_COOKIE_AGE

По умолчанию: 31449600 (примерно 1 год, в секундах)

Срок действия куки CSRF в секундах.

Причина установки длительного срока истечения срока действия — избежать проблем в случае закрытия браузера пользователем или добавления страницы в закладки, а затем загрузки этой страницы из кэша браузера. Без постоянных куки отправка формы в этом случае завершится неудачей.

Некоторые браузеры (в частности, Internet Explorer) могут запретить использование постоянных куки или повредить индексы файла cookie на диске, из-за чего проверки защиты CSRF (иногда прерывисто) могут завершиться неудачей. Измените это значение на None, чтобы использовать куки CSRF на основе сеанса, которые хранят куки в памяти вместо постоянного хранилища.

CSRF_COOKIE_DOMAIN

По умолчанию: None

Домен, используемый при установке куки CSRF. Это может быть полезно для простого исключения запросов с разных поддоменов из обычной защиты от подделки межсайтовых запросов. Его следует установить на строку, например, ".example.com", чтобы разрешить POST-запрос из формы на одном поддомене, который будет принят представлением, обслуживаемым с другого поддомена.

Обратите внимание, что наличие этого параметра не подразумевает, что защита Django от подделки межсайтовых запросов по умолчанию защищена от атак с разных поддоменов — см. раздел ограничения CSRF.

CSRF_COOKIE_HTTPONLY

По умолчанию: False

Использовать флаг HttpOnly для куки CSRF. Если это значение установлено как True, клиентский JavaScript не сможет получить доступ к куки CSRF.

Отмечение куки CSRF как HttpOnly не обеспечивает никакой практической защиты, так как CSRF предназначен только для защиты от атак с разных доменов. Если злоумышленник может прочитать куки через JavaScript, он уже находится в том же домене, что и браузер, поэтому он может делать все, что захочет. (XSS — намного большая проблема, чем CSRF.)

Хотя настройка малоэффективна, её иногда требуют аудиторы безопасности.

Если вы включили это и вам нужно отправить значение маркера CSRF с AJAX-запросом, ваш JavaScript должен извлечь значение из скрытого поля формы маркера CSRF, а не из куки.

См. SESSION_COOKIE_HTTPONLY для получения подробностей о HttpOnly.

CSRF_COOKIE_NAME

По умолчанию: 'csrftoken'

Имя куки для использования маркера аутентификации CSRF. Это может быть любое имя (только если оно отличается от других имён куки в вашем приложении). См. Защита от подделки межсайтовых запросов.

CSRF_COOKIE_PATH

По умолчанию: '/'

Путь, установленный в куки CSRF. Он должен соответствовать пути URL вашего установленного Django или быть его предком.

Это полезно, если у вас несколько экземпляров Django работают под одним и тем же именем хоста. Они могут использовать разные пути куки, и каждый экземпляр увидит только свою собственную куки CSRF.

CSRF_COOKIE_SAMESITE

По умолчанию: 'Lax'

Значение флага SameSite в куки CSRF. Этот флаг предотвращает отправку куки в запросах с разных сайтов.

См. SESSION_COOKIE_SAMESITE для получения подробностей о SameSite.

Изменено в Django 3.1:

Разрешено значение CSRF_COOKIE_SAMESITE = 'None'.

CSRF_COOKIE_SECURE

По умолчанию: False

Использовать безопасную куки для куки 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). Для небезопасного запроса secure защита CSRF Django требует, чтобы запрос имел заголовок Referer, который соответствует источнику в заголовке Host. Это предотвращает, например, запрос POST с subdomain.example.com от успешного выполнения против api.example.com. Если вам нужны запросы с разных источников через HTTPS, например, добавьте "subdomain.example.com" в этот список. Настройка также поддерживает поддомены, поэтому вы можете добавить ".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).

END_OF_DOCUMENT_MARKER

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 для неограниченных постоянных подключений.

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 упрощает арифметику дат и времени — нет необходимости в методе normalize(), предоставляемом pytz.
    • Если вы подключаетесь к базе данных стороннего разработчика, в которой даты и время хранятся в местном времени, а не в UTC, вам необходимо установить этот параметр в соответствующий часовой пояс. Аналогично, если Django управляет базой данных, но системы сторонних разработчиков подключаются к той же базе данных и ожидают найти даты и время в местном времени, вам необходимо установить этот параметр.
  • Если бэкенд базы данных поддерживает часовые пояса (например, PostgreSQL), параметр TIME_ZONE очень редко требуется. Его можно изменить в любое время; база данных позаботится о преобразовании дат и времени в нужный часовой пояс.

    Установка часового пояса подключения к базе данных может быть полезной для выполнения необработанных запросов SQL, связанных с функциями дат/времени, предоставляемыми базой данных, такими как date_trunc, так как их результаты зависят от часового пояса.

    Однако это имеет недостаток: получение всех дат и времени в местном времени усложняет арифметику дат и времени — вам нужно вызвать метод normalize(), предоставляемый pytz, после каждой операции.

    Рассмотрите возможность явного преобразования в местное время с помощью AT TIME ZONE в необработанных запросах SQL вместо установки параметра TIME_ZONE.

Изменено в Django 3.1:

Использование этого параметра, когда бэкенд базы данных поддерживает часовые пояса, было разрешено.

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
Добавлено в Django 3.1.

По умолчанию: True

Если установлено в False, миграции не будут выполняться при создании тестовой базы данных. Это аналогично установке None как значения в MIGRATION_MODULES, но для всех приложений.

MIRROR

По умолчанию: None

Псевдоним базы данных, который эта база данных должна дублировать во время тестирования.

Эта настройка существует для тестирования конфигураций «главный/реплика» (называемых «мастер/слейв» некоторыми базами данных) нескольких баз данных. См. документацию по тестированию конфигураций «главный/реплика» для получения подробностей.

NAME

По умолчанию: None

Имя базы данных для использования при запуске набора тестов.

Если используется значение по умолчанию (None) с движком базы данных SQLite, тесты будут использовать базу данных в памяти. Для всех других движков баз данных тестовая база данных будет использовать имя 'test_' + DATABASE_NAME.

См. Тестовую базу данных.

SERIALIZE

Булево значение для управления сериализацией стандартного тестового исполнителя базы данных в строку JSON в памяти перед запуском тестов (используется для восстановления состояния базы данных между тестами, если у вас нет транзакций). Вы можете установить это в False, чтобы ускорить время создания, если у вас нет классов тестов с serialized_rollback=True.

TEMPLATE

Это настройка, специфичная для PostgreSQL.

Имя шаблона (например, 'template0'), из которого должна быть создана тестовая база данных.

CREATE_DB

По умолчанию: True

Это настройка, специфичная для Oracle.

Если установлено в False, тестовые табличные пространства не будут автоматически создаваться в начале тестов или удаляться в конце.

END_OF_DOCUMENT_MARKER
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. Крупные запросы могут быть использованы как вектор атаки «отказ в обслуживании», если не ограничены. Поскольку веб-серверы обычно не выполняют глубокий анализ запросов, аналогичную проверку на этом уровне выполнить невозможно.

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', '%m/%d/%Y', '%m/%d/%y', # '2006-10-25', '10/25/2006', '10/25/06'
    '%b %d %Y', '%b %d, %Y',            # 'Oct 25 2006', 'Oct 25, 2006'
    '%d %b %Y', '%d %b, %Y',            # '25 Oct 2006', '25 Oct, 2006'
    '%B %d %Y', '%B %d, %Y',            # 'October 25 2006', 'October 25, 2006'
    '%d %B %Y', '%d %B, %Y',            # '25 October 2006', '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. Форматы будут пробоваться в порядке следования, используя первый допустимый. Обратите внимание, что эти строки формата используют синтаксис модуля Python datetime, а не строки форматов из фильтра шаблона date. Форматы только даты не включены, поскольку поля datetime автоматически попробуют DATE_INPUT_FORMATS в последнюю очередь.

Когда USE_L10N установлено в значение True, локальный формат будет иметь приоритет и будет применён вместо него.

См. также DATE_INPUT_FORMATS и TIME_INPUT_FORMATS.

Изменено в Django 3.1:

В более ранних версиях значение по умолчанию — список, содержащий также форматы только даты.

DEBUG

По умолчанию: False

Булевое значение, включающее/отключающее режим отладки.

Никогда не развёртывайте сайт в производство с включённым DEBUG.

Одна из основных функций режима отладки — отображение подробных страниц ошибок. Если ваше приложение вызывает исключение при включённом DEBUG, 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 3.2.

Значение по умолчанию: 'django.db.models.AutoField'

Тип поля первичного ключа по умолчанию, который следует использовать для моделей, не имеющих поля с primary_key=True.

DEFAULT_CHARSET

Значение по умолчанию: 'utf-8'

Набор символов по умолчанию, используемый для всех HttpResponse объектов, если тип MIME не задан вручную. Используется при формировании заголовка Content-Type.

DEFAULT_EXCEPTION_REPORTER

Новое в Django 3.1.

Значение по умолчанию: 'django.views.debug.ExceptionReporter'

Класс отчётчика об исключениях по умолчанию, который будет использоваться, если таковой не назначен для экземпляра HttpRequest. См. Настройка сообщений об ошибках.

DEFAULT_EXCEPTION_REPORTER_FILTER

Значение по умолчанию: 'django.views.debug.SafeExceptionReporterFilter'

Класс фильтра отчётчика об исключениях по умолчанию, который будет использоваться, если таковой не назначен для экземпляра HttpRequest. См. Фильтрация сообщений об ошибках.

DEFAULT_FILE_STORAGE

Значение по умолчанию: 'django.core.files.storage.FileSystemStorage'

Класс хранилища файлов по умолчанию, который будет использоваться для любых операций, связанных с файлами, которые не указывают конкретную систему хранения. См. Управление файлами.

DEFAULT_FROM_EMAIL

Значение по умолчанию: 'webmaster@localhost'

Адрес электронной почты по умолчанию, используемый для различных автоматизированных сообщений от администратора(ов) сайта. Это не включает сообщения об ошибках, отправляемые в ADMINS и MANAGERS; для этого см. SERVER_EMAIL.

DEFAULT_HASHING_ALGORITHM

Новое в Django 3.1.

Значение по умолчанию: 'sha256'

Алгоритм хэширования по умолчанию, используемый для кодирования куки, токенов сброса пароля на сайте администратора, пользовательских сессий и подписей, созданных с помощью django.core.signing.Signer и django.core.signing.dumps(). Алгоритм должен быть 'sha1' или 'sha256'. Для получения подробностей об использовании см. примечания к выпуску.

Устарело начиная с версии 3.1: Эта переходная настройка устарела. Поддержка для нее, а также для токенов, куки, сессий и подписей, использующих алгоритм хэширования SHA-1, будет удалена в Django 4.0.

DEFAULT_INDEX_TABLESPACE

Значение по умолчанию: '' (Пустая строка)

Пространство таблиц по умолчанию, которое будет использоваться для индексов полей, не указавших своё, если бэкенд поддерживает это (см. Пространства таблиц).

DEFAULT_TABLESPACE

Значение по умолчанию: '' (Пустая строка)

Пространство таблиц по умолчанию, которое будет использоваться для моделей, не указавших своё, если бэкенд поддерживает это (см. Пространства таблиц).

DISALLOWED_USER_AGENTS

Значение по умолчанию: [] (Пустой список)

Список скомпилированных регулярных выражений, представляющих строки User-Agent, которые не разрешены для посещения любой страницы в системе. Используйте для ботов/роботов. Это используется только в том случае, если установлен CommonMiddleware (см. Средство).

EMAIL_BACKEND

Значение по умолчанию: 'django.core.mail.backends.smtp.EmailBackend'

Бэкенд, который следует использовать для отправки электронных писем. Список доступных бэкэндов см. в Отправка писем.

EMAIL_FILE_PATH

Значение по умолчанию: Не определено

Директория, используемая бэкендом отправки писем по файлам бэкенд почты по файлам для хранения выходных файлов.

Изменено в Django 3.1:

Добавлена поддержка pathlib.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

По умолчанию: [] (пустой список)

Список каталогов, в которых будут просматриваться файлы фикстур, помимо каталога fixtures каждой приложения, в порядке поиска.

Обратите внимание, что эти пути должны использовать косые черты Unix-стиля, даже в Windows.

См. Предоставление данных с помощью фикстур и Загрузка фикстур.

FORCE_SCRIPT_NAME

По умолчанию: None

Если не None, это будет использоваться в качестве значения переменной среды SCRIPT_NAME в любом HTTP-запросе. Этот параметр может использоваться для переопределения значения, предоставленного сервером, переменной среды SCRIPT_NAME, которое может быть переписанной версией предпочитаемого значения или вообще не предоставлено. Он также используется в django.setup() для установки префикса скрипта решателя URL вне цикла запроса/ответа (например, в командах управления и автономных скриптах) для генерации корректных URL-адресов, когда SCRIPT_NAME не /.

FORM_RENDERER

По умолчанию: 'django.forms.renderers.DjangoTemplates'

Класс, который отображает виджеты формы. Он должен реализовывать низкоуровневый API отображения.

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_FORMAT
  • DATE_INPUT_FORMATS
  • DATETIME_FORMAT,
  • DATETIME_INPUT_FORMATS
  • DECIMAL_SEPARATOR
  • FIRST_DAY_OF_WEEK
  • MONTH_DAY_FORMAT
  • NUMBER_GROUPING
  • SHORT_DATE_FORMAT
  • SHORT_DATETIME_FORMAT
  • THOUSAND_SEPARATOR
  • TIME_FORMAT
  • TIME_INPUT_FORMATS
  • YEAR_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() добавлять некоторые переменные в контекст шаблона.
  • Могут использовать закладки admindocs bookmarklets даже если не вошли в систему как пользователь с правами администратора.
  • Отмечаются как «внутренние» (в отличие от «ВНЕШНИЕ») в письмах электронной почты AdminEmailHandler.

LANGUAGE_CODE

Значение по умолчанию: 'en-us'

Строка, представляющая код языка для этой установки. Он должен быть в стандартном формате идентификатора языка. Например, английский США — это "en-us". См. также список идентификаторов языка и Локализация и интернационализация.

USE_I18N должен быть активен, чтобы это значение имело какой-либо эффект.

Он выполняет две задачи:

  • Если среда локализации не используется, она определяет, какой перевод отображается всем пользователям.
  • Если среда локализации активна, она предоставляет язык по умолчанию в случае, если предпочтительный язык пользователя не может быть определен или не поддерживается веб-сайтом. Она также предоставляет перевод по умолчанию, когда перевод данного литерала не существует для предпочтительного языка пользователя.

См. Как Django определяет предпочтения языка для получения дополнительной информации.

LANGUAGE_COOKIE_AGE

Значение по умолчанию: None (истекает при закрытии браузера)

Срок действия cookie языка в секундах.

LANGUAGE_COOKIE_DOMAIN

Значение по умолчанию: None

Домен, который следует использовать для cookie языка. Установите это значение в строку, например, "example.com", для файлов cookie между доменами, или используйте None для стандартного файла cookie домена.

Будьте осторожны при обновлении этого параметра на сайте в режиме производства. Если вы обновите этот параметр, чтобы разрешить файлы cookie между доменами на сайте, который ранее использовал стандартные файлы cookie домена, существующие файлы cookie пользователей, имеющие старый домен, не будут обновлены. Это приведет к тому, что пользователи сайта не смогут изменить язык, пока эти файлы cookie будут существовать. Единственный безопасный и надежный вариант для выполнения переключения — это постоянно изменить имя файла cookie языка (через параметр LANGUAGE_COOKIE_NAME) и добавить средство, которое копирует значение из старого файла cookie в новый, а затем удаляет старый.

LANGUAGE_COOKIE_HTTPONLY

Значение по умолчанию: False

Использовать ли флаг HttpOnly для cookie языка. Если это значение установлено в True, клиентский JavaScript не сможет получить доступ к cookie языка.

См. SESSION_COOKIE_HTTPONLY для получения подробностей о HttpOnly.

LANGUAGE_COOKIE_NAME

Значение по умолчанию: 'django_language'

Имя cookie для cookie языка. Вы можете задать любое имя (при условии, что оно отличается от других имен файлов cookie в вашем приложении). См. Локализация и интернационализация.

LANGUAGE_COOKIE_PATH

Значение по умолчанию: '/'

Путь, установленный в cookie языка. Он должен либо совпадать с URL-путем вашей установки Django, либо быть родительским для этого пути.

Это полезно, если у вас несколько установок Django, работающих под одним именем хоста. Они могут использовать разные пути cookie, и каждая установка будет видеть только свой собственный файл cookie языка.

Будьте осторожны при обновлении этого параметра на сайте в режиме производства. Если вы обновите этот параметр, чтобы использовать более глубокий путь, чем раньше, существующие файлы cookie пользователей, имеющие старый путь, не будут обновлены. Это приведет к тому, что пользователи сайта не смогут изменить язык, пока эти файлы cookie будут существовать. Единственный безопасный и надежный вариант для выполнения переключения — это постоянно изменить имя файла cookie языка (через параметр LANGUAGE_COOKIE_NAME) и добавить средство, которое копирует значение из старого файла cookie в новый, а затем удаляет старый.

LANGUAGE_COOKIE_SAMESITE

Значение по умолчанию: None

Значение флага SameSite в cookie языка. Этот флаг предотвращает отправку файла cookie в запросах между сайтами.

См. SESSION_COOKIE_SAMESITE для получения подробностей о SameSite.

END_OF_DOCUMENT_MARKER
Изменено в Django 3.1:

Настройка LANGUAGE_COOKIE_SAMESITE = 'None' была разрешена.

LANGUAGE_COOKIE_SECURE

По умолчанию: False

Использовать ли безопасный 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

Список используемых посредников. См. Посредники.

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 фильтруется по древовидной прокрутке даты, заголовок для заданного дня отображает день и месяц. Разные языковые локали имеют разные форматы. Например, американский английский будет говорить «1 января», а испанский – «1 Enero».

Обратите внимание, что если USE_L10N установлено в значение True, соответствующий формат локали имеет более высокий приоритет и будет применён.

END_OF_DOCUMENT_MARKER

См. 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 токенов.
  • Любое использование криптографического шифрования, если не указан другой ключ.

Если вы сменили секретный ключ, все вышеперечисленное станет недействительным. Секретные ключи не используются для паролей пользователей, и смена ключа на них не повлияет.

Примечание

Создаваемый по умолчанию файл settings.py с помощью django-admin startproject создаёт уникальный SECRET_KEY для удобства.

SECURE_BROWSER_XSS_FILTER

По умолчанию: False

Если True, то SecurityMiddleware устанавливает заголовок X-XSS-Protection: 1; mode=block для всех ответов, у которых его ещё нет.

Современные браузеры больше не поддерживают заголовок HTTP X-XSS-Protection. Хотя данная настройка мало чем практична, вы всё равно можете установить заголовок, если поддерживаете старые браузеры.

SECURE_CONTENT_TYPE_NOSNIFF

По умолчанию: True

Если True, то SecurityMiddleware устанавливает заголовок X-Content-Type-Options: nosniff для всех ответов, у которых его ещё нет.

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 или нет. Если между прокси-сервером и Django существует соединение без HTTPS, то is_secure() всегда будет возвращать False — даже для запросов, выполненных конечным пользователем через HTTPS. В противоположность этому, если между прокси-сервером и Django существует соединение HTTPS, то 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).

Вы должны только установить эту настройку, если вы контролируете свой прокси-сервер или имеете гарантию, что он корректно устанавливает/удаляет этот заголовок.

Обратите внимание, что заголовок должен быть в формате, используемом request.META — все заглавные буквы и, вероятно, начинающийся с HTTP_. (Помните, Django автоматически добавляет 'HTTP_' в начало имён заголовков x-header перед тем, как сделать заголовок доступным в 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 во всех ответах, которые его еще не содержат, на указанное значение.

Изменено в Django 3.1:

В более старых версиях значение по умолчанию равно None.

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'

Бэкенд, используемый для подписи файлов cookie и других данных.

См. также документацию по криптографической подписи.

SILENCED_SYSTEM_CHECKS

По умолчанию: [] (Пустой список)

Список идентификаторов сообщений, сгенерированных механизмом проверки системы (т.е. ["models.W001"]), которые вы хотите постоянно игнорировать. Заглушенные проверки не будут выводиться в консоль.

См. также документацию по механизму проверки системы.

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_I18N

По умолчанию: True

Булево значение, указывающее, должен ли быть включён переводческий механизм Django. Это позволяет выключить его для повышения производительности. Если значение установлено в False, Django внесёт некоторые оптимизации, чтобы не загружать механизм перевода.

См. также LANGUAGE_CODE, USE_L10N и USE_TZ.

Примечание

Файл settings.py по умолчанию, созданный командой django-admin startproject, включает USE_I18N = True для удобства.

USE_L10N

По умолчанию: False

Булево значение, указывающее, будет ли по умолчанию включено локальное форматирование данных. Если установлено в True, например, Django будет отображать числа и даты в формате текущей локали.

См. также LANGUAGE_CODE, USE_I18N и USE_TZ.

Примечание

Файл settings.py по умолчанию, созданный командой django-admin startproject, включает USE_L10N = True для удобства.

USE_THOUSAND_SEPARATOR

По умолчанию: False

Булево значение, указывающее, следует ли отображать числа с разделителем тысяч. Если установлено в True и USE_L10N также имеет значение True, Django будет форматировать числа с использованием настроек NUMBER_GROUPING и THOUSAND_SEPARATOR. Эти настройки также могут быть определены локалью, которая имеет приоритет.

См. также DECIMAL_SEPARATOR, NUMBER_GROUPING и THOUSAND_SEPARATOR.

USE_TZ

По умолчанию: False

Булево значение, указывающее, должны ли даты и время по умолчанию учитываться в часовом поясе. Если установлено в 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 Admin — и, возможно, других частях системы — в случаях, когда отображаются только год и месяц.

Например, когда страница списка изменений Django Admin фильтруется по дате, заголовок для определённого месяца отображает месяц и год. Разные языковые локали имеют разные форматы. Например, в американском английском будет «Январь 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

Новое в Django 3.1.

Значение по умолчанию: 259200 (3 дня, в секундах)

Количество секунд, в течение которого ссылка на сброс пароля действительна.

Используется в PasswordResetConfirmView.

Примечание

Уменьшение значения этого таймаута не влияет на возможность злоумышленника брутфорсить токен сброса пароля. Токены разработаны так, чтобы быть защищёнными от брутфорса без каких-либо таймаутов.

Этот таймаут существует для защиты от некоторых маловероятных сценариев атак, например, от получения доступа к архивам электронной почты, которые могут содержать старые, неиспользуемые токены сброса пароля.

PASSWORD_RESET_TIMEOUT_DAYS

Значение по умолчанию: 3

Количество дней, в течение которых ссылка на сброс пароля действительна.

Используется в PasswordResetConfirmView.

Устаревшая начиная с версии 3.1: Эта настройка устарела. Используйте PASSWORD_RESET_TIMEOUT вместо неё.

PASSWORD_HASHERS

См. Как Django хранит пароли.

Значение по умолчанию:

[
    'django.contrib.auth.hashers.PBKDF2PasswordHasher',
    'django.contrib.auth.hashers.PBKDF2SHA1PasswordHasher',
    'django.contrib.auth.hashers.Argon2PasswordHasher',
    'django.contrib.auth.hashers.BCryptSHA256PasswordHasher',
]

AUTH_PASSWORD_VALIDATORS

Значение по умолчанию: [] (Пустой список)

Список валидаторов, которые используются для проверки надёжности паролей пользователей. Подробнее см. в Валидация паролей. По умолчанию валидация не выполняется и все пароли принимаются.

Messages

Настройки для 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'

Подробнее см. в хранилища сообщений.

Бэкенды, использующие куки — CookieStorage и FallbackStorage — используют значение SESSION_COOKIE_DOMAIN, SESSION_COOKIE_SECURE и SESSION_COOKIE_HTTPONLY при установке своих куки.

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

По умолчанию: 1209600 (2 недели, в секундах)

Срок действия куки сессии в секундах.

SESSION_COOKIE_DOMAIN

По умолчанию: None

Домен для использования с куки сессии. Установите это значение на строку, такую как "example.com" для куки разных доменов, или используйте None для стандартной куки домена.

Для использования куки разных доменов с CSRF_USE_SESSIONS необходимо включить ведущую точку (например, ".example.com") для учёта проверки referer middleware CSRF.

Будьте осторожны при обновлении этого параметра на сайте в режиме работы. Если вы обновите это значение, чтобы включить куки разных доменов на сайте, который ранее использовал стандартные куки домена, существующие куки пользователей будут установлены для старого домена. Это может привести к тому, что они не смогут войти в систему до тех пор, пока эти куки не истекут.

Этот параметр также влияет на куки, установленные django.contrib.messages.

SESSION_COOKIE_HTTPONLY

По умолчанию: True

Использовать ли флаг HttpOnly для куки сессии. Если это значение установлено в True, клиентский JavaScript не сможет получить доступ к куки сессии.

HttpOnly — флаг, включённый в заголовок HTTP Set-Cookie. Он является частью стандарта RFC 6265#section-4.1.2.6 для куки и может быть полезным способом для снижения риска доступа к защищённым данным куки со стороны клиентского скрипта.

Это делает менее тривиальным для злоумышленника эскалацию уязвимости XSS в полное перехват сессии пользователя. Нет многих веских причин для отключения этого параметра. Ваш код не должен считывать куки сессии из JavaScript.

SESSION_COOKIE_NAME

По умолчанию: 'sessionid'

Имя куки для использования в сессиях. Оно может быть любым (при условии, что оно отличается от других имён куки в вашем приложении).

SESSION_COOKIE_PATH

По умолчанию: '/'

Путь, установленный в куки сессии. Он должен соответствовать пути URL вашего Django-приложения или быть его родительским путём.

Это полезно, если у вас несколько экземпляров Django, работающих под одним именем хоста. Они могут использовать разные пути куки, и каждый экземпляр будет видеть только свою собственную куки сессии.

SESSION_COOKIE_SAMESITE

По умолчанию: 'Lax'

Значение флага SameSite в куки сессии. Этот флаг предотвращает отправку куки в межсайтовые запросы, тем самым предотвращая атаки CSRF и делая невозможными некоторые методы кражи куки сессии.

Возможные значения для параметра:

  • 'Strict': предотвращает отправку куки браузером на целевой сайт во всех межсайтовых контекстах просмотра, даже при переходе по обычной ссылке.

    Например, для сайта, похожего на GitHub, это означает, что если авторизованный пользователь переходит по ссылке на частный проект GitHub, опубликованный на корпоративном форуме обсуждений или по электронной почте, GitHub не получит куки сессии, и пользователь не сможет получить доступ к проекту. Веб-сайт банка, однако, скорее всего, не хочет разрешать связывание любых транзакционных страниц из внешних сайтов, поэтому флаг 'Strict' будет уместнее.

  • 'Lax' (по умолчанию): обеспечивает баланс между безопасностью и удобством использования для веб-сайтов, которые хотят сохранить сессию входа пользователя после того, как пользователь перешёл по ссылке с внешнего сайта.

    В сценарии GitHub куки сессии будут разрешены при переходе по обычной ссылке с внешнего веб-сайта и будут заблокированы в запросах, подверженных CSRF (например, POST).

  • 'None' (строка): куки сессии будут отправляться со всеми запросами того же сайта и с других сайтов.
  • False: отключает флаг.

Примечание

Современные браузеры предоставляют более безопасную политику по умолчанию для флага SameSite и будут использовать Lax для куки без явного значения.

Изменено в Django 3.1:

Параметр SESSION_COOKIE_SAMESITE = 'None' был разрешён.

SESSION_COOKIE_SECURE

По умолчанию: False

Использовать ли безопасные куки для куки сессии. Если это значение установлено в True, куки будут помечены как «безопасные», что означает, что браузеры могут гарантировать, что куки будут отправляться только по HTTPS-соединению.

Оставление этого параметра выключенным — не лучшая идея, потому что злоумышленник мог бы перехватить незашифрованные куки сессии с помощью анализатора пакетов и использовать куки для перехвата сессии пользователя.

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.PickleSerializer'
  • 'django.contrib.sessions.serializers.JSONSerializer'

См. Сериализация сессий для получения подробностей, включая предупреждение о потенциальном выполнении удалённого кода при использовании PickleSerializer.

Сайты

Настройки для 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.

Готовый экземпляр бэкэнда хранения, определенного в этом параметре, можно найти в django.contrib.staticfiles.storage.staticfiles_storage.

Пример см. в Отображение статических файлов из облачной службы или CDN.

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_FILE_STORAGE.

Примечание

При использовании поиска AppDirectoriesFinder убедитесь, что ваши приложения могут быть найдены staticfiles, добавив приложение в настройку INSTALLED_APPS вашего сайта.

Поисковые системы статических файлов в настоящее время рассматриваются как частный интерфейс, и этот интерфейс поэтому не документирован.

Обзор основных настроек

Кэширование

  • CACHES
  • CACHE_MIDDLEWARE_ALIAS
  • CACHE_MIDDLEWARE_KEY_PREFIX
  • CACHE_MIDDLEWARE_SECONDS

База данных

  • DATABASES
  • DATABASE_ROUTERS
  • DEFAULT_INDEX_TABLESPACE
  • DEFAULT_TABLESPACE

Отладка

  • DEBUG
  • DEBUG_PROPAGATE_EXCEPTIONS

Электронная почта

  • ADMINS
  • DEFAULT_CHARSET
  • DEFAULT_FROM_EMAIL
  • EMAIL_BACKEND
  • EMAIL_FILE_PATH
  • EMAIL_HOST
  • EMAIL_HOST_PASSWORD
  • EMAIL_HOST_USER
  • EMAIL_PORT
  • EMAIL_SSL_CERTFILE
  • EMAIL_SSL_KEYFILE
  • EMAIL_SUBJECT_PREFIX
  • EMAIL_TIMEOUT
  • EMAIL_USE_LOCALTIME
  • EMAIL_USE_TLS
  • MANAGERS
  • SERVER_EMAIL

Обработка ошибок

  • DEFAULT_EXCEPTION_REPORTER
  • DEFAULT_EXCEPTION_REPORTER_FILTER
  • IGNORABLE_404_URLS
  • MANAGERS
  • SILENCED_SYSTEM_CHECKS

Настройки загрузки файлов

  • DEFAULT_FILE_STORAGE
  • FILE_UPLOAD_HANDLERS
  • FILE_UPLOAD_MAX_MEMORY_SIZE
  • FILE_UPLOAD_PERMISSIONS
  • FILE_UPLOAD_TEMP_DIR
  • MEDIA_ROOT
  • MEDIA_URL

Формы

  • FORM_RENDERER

Глобализация (i18n/l10n)

  • DATE_FORMAT
  • DATE_INPUT_FORMATS
  • DATETIME_FORMAT
  • DATETIME_INPUT_FORMATS
  • DECIMAL_SEPARATOR
  • FIRST_DAY_OF_WEEK
  • FORMAT_MODULE_PATH
  • LANGUAGE_CODE
  • LANGUAGE_COOKIE_AGE
  • LANGUAGE_COOKIE_DOMAIN
  • LANGUAGE_COOKIE_HTTPONLY
  • LANGUAGE_COOKIE_NAME
  • LANGUAGE_COOKIE_PATH
  • LANGUAGE_COOKIE_SAMESITE
  • LANGUAGE_COOKIE_SECURE
  • LANGUAGES
  • LANGUAGES_BIDI
  • LOCALE_PATHS
  • MONTH_DAY_FORMAT
  • NUMBER_GROUPING
  • SHORT_DATE_FORMAT
  • SHORT_DATETIME_FORMAT
  • THOUSAND_SEPARATOR
  • TIME_FORMAT
  • TIME_INPUT_FORMATS
  • TIME_ZONE
  • USE_I18N
  • USE_L10N
  • USE_THOUSAND_SEPARATOR
  • USE_TZ
  • YEAR_MONTH_FORMAT

HTTP

  • DATA_UPLOAD_MAX_MEMORY_SIZE
  • DATA_UPLOAD_MAX_NUMBER_FIELDS
  • DEFAULT_CHARSET
  • DISALLOWED_USER_AGENTS
  • FORCE_SCRIPT_NAME
  • INTERNAL_IPS
  • MIDDLEWARE
  • Безопасность
    • SECURE_BROWSER_XSS_FILTER
    • SECURE_CONTENT_TYPE_NOSNIFF
    • SECURE_HSTS_INCLUDE_SUBDOMAINS
    • SECURE_HSTS_PRELOAD
    • SECURE_HSTS_SECONDS
    • SECURE_PROXY_SSL_HEADER
    • SECURE_REDIRECT_EXEMPT
    • SECURE_REFERRER_POLICY
    • SECURE_SSL_HOST
    • SECURE_SSL_REDIRECT
  • SIGNING_BACKEND
  • USE_X_FORWARDED_HOST
  • USE_X_FORWARDED_PORT
  • WSGI_APPLICATION

Ведение журнала

  • LOGGING
  • LOGGING_CONFIG

Модели

  • ABSOLUTE_URL_OVERRIDES
  • FIXTURE_DIRS
  • INSTALLED_APPS

Безопасность

  • Защита от межсайтовых поддельных запросов
    • CSRF_COOKIE_DOMAIN
    • CSRF_COOKIE_NAME
    • CSRF_COOKIE_PATH
    • CSRF_COOKIE_SAMESITE
    • CSRF_COOKIE_SECURE
    • CSRF_FAILURE_VIEW
    • CSRF_HEADER_NAME
    • CSRF_TRUSTED_ORIGINS
    • CSRF_USE_SESSIONS
  • SECRET_KEY
  • X_FRAME_OPTIONS

Сериализация

  • DEFAULT_CHARSET
  • SERIALIZATION_MODULES

Шаблоны

  • TEMPLATES

Тестирование

  • База данных: TEST
  • TEST_NON_SERIALIZED_APPS
  • TEST_RUNNER

URL-адреса

  • APPEND_SLASH
  • PREPEND_WWW
  • ROOT_URLCONF

© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/3.2/ref/settings/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API