Django: установить пользователя как «аутентифицированного» без перезагрузки страницы - PullRequest
0 голосов
/ 10 мая 2011

В построенном мной веб-приложении аутентификация пользователя выполняется в модальном окне jQuery.

Мой вопрос:
После регистрации возможно ли установить пользователя как «прошедшего проверку» (в глазах Джанго) в родительском окне при закрытии модального окна без перезагрузка родительского окна?

В данный момент процесс выглядит следующим образом:
1) Пользователь заходит на страницу и нажимает на функцию только для членов
2) Страницаотключается, и появляется модальное окно регистрации jQuery (я использую Colorbox)
3) Пользователь регистрируется на моем сайте и закрывает модальное окно
4) Colorbox запускает обработчик "onClosed ()", чтобы обновить родительский элементpage

Я бы хотел изменить # 4, чтобы обработчик Colorbox вызывал функцию Javascript, чтобы установить пользователя как «аутентифицированного» вместо грубого метода перезагрузки страницы.

Кто-нибудь сделалоб этом раньше и хотите поделиться своим советом?

1 Ответ

3 голосов
/ 10 мая 2011

Я не пробовал сам, но я бы посоветовал вам выполнить аутентификацию / вход в систему (из модуля django.contrib.auth) пользователя вручную, когда пользователь отправляет регистрацию от, а затем выдает ответ, который будет обработан jquery.Этот ответ может быть просто кодом состояния, показывающим, что учетная запись была успешно создана.Ответ является обычным http-ответом, поэтому он должен содержать информацию cookie для нового sessionid в заголовке.Этот заголовок обрабатывается браузером до того, как jQuery что-то с ним делает, поэтому должен обрабатываться так же, как и перезагрузка всей страницы.

...