мы можем украсить представление login_required
, чтобы неавторизованный пользователь был перенаправлен на страницу входа.Мода для входа в django?
Я хотел бы создать декоратор, чтобы показать модальный на текущей странице, когда пользователь, не прошедший проверку подлинности, обращается к представлению.
Я думаю, что я могу обработать, когда запрос сделан с помощью ajax.
Я мог бы использовать $ .ajaxSetup для обработки 401 ошибок, чтобы показать модальный.
Но как мне показать модальность при выполнении обычного запроса?
Редактировать
Похожий вопрос задают, Django authentication and Ajax - URLs that require login
Но она охватывает только Аякса запросы.
Существуют коды сторонних библиотек, которые возвращают ответ 401 для запроса ajax (например, рамки rest-api). Может ли контекстный процессор просматривать код состояния ответа? Я просто посмотрел на django doc, но не уверен, когда вызывается контекстный процессор .. до того, как настроен статус ответа или нет. – eugene
Контекстный процессор не должен смотреть код состояния ответа. Контекстный процессор получает запрос как аргумент, и вы можете просто проверить, проверен ли request.user.is_authenticated или нет. –
ну, я хочу только подмножество представлений (с custom_login_required decorator), чтобы проверить user.is_authenticated и добавить переменную. – eugene