Как в Django добавить обязательный вход для всего приложения?
Предположим, у меня есть 3 приложения на моем Django сайте app_1, app_2, app_3. app_1 и app_2 может получить доступ любой пользователь, но для app_3 я хочу, чтобы пользователь вошел в систему.
Используя login_required
я могу добиться этого. Но у меня более 30 представлений и урлов. Я не хочу писать декоратор login_required
на каждой функции представления. Есть ли какой-нибудь другой способ?
Для этой цели существует пакет pypi под названием django-login-required-middelware.
Просто установите его с помощью:
pip install django-login-required-middleware
Затем добавьте login_required.middleware.LoginRequiredMiddleware
к MIDDLEWARE в settinggs.py
после django.contrib.auth.middleware.AuthenticationMiddleware