Список зарегистрированных приложений и посредников

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

Сразу после создания проекта список состоит их следующих приложений:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Назначение данных приложений:

— django.contrib.admin – обеспечивает работу административного веб-сайта Django;

— django.contrib.auth – интегрированная подсистема разграничения доступом;

— django.contrib.contenttypes – обеспечивает хранение всех моделей проекта. Приложение необходимо при создании полиморфных связей между моделями;

— django.contrib.sessions – обработка серверных сессий;

— django.contrib.messages – вывод всплывающих сообщений (используется административным сайтом);

— django.contrib.staticfiles – используется для обработки статических файлов.

Список зарегистрированных посредников

Посредник Django (middleware) – программный модуль, который выполняет предварительную обработку запроса от клиента перед отправкой контроллеру, а также обработку ответа контроллера, перед отправкой клиенту.

Для хранения списка всех посредников, зарегистрированных в проекте, используется параметр MIDDLEWARE. При создании проекта данный список выглядит следующим образом:

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
]

Стандартные посредники имеют следующее назначение:

— django.middleware.security.SecurityMiddleware – дополнительная защита от сетевых атак;

— django.contrib.sessions.middleware.SessionMiddleware – обработка серверных сессий на низком уровне. Используется подсистемами сессий, разграничения доступа и всплывающих сообщений;

— django.middleware.common.CommonMiddleware – предварительная обработка запросов;

— django.middleware.csrf.CsrfViewMiddleware – защита от межсайтовых атак при использовании POST-запросов;

— django.contrib.auth.middleware.AuthenticationMiddleware – обеспечивает добавление в объект запроса атрибута, в котором хранится текущий пользователь. Данный атрибут позволяет определить в шаблоне или контроллере, какой из пользователей авторизован на текущий момент;

— django.contrib.messages.middleware.MessageMiddleware – обработка всплывающих сообщений на низком уровне;

— django.middleware.clickjacking.XFrameOptionsMiddleware – дополнительная защита сайта от внешних сетевых атак.





Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: