@mefisto661

AJAX с DJANGO, что можно, а что нет?

Только начинаю разбираться в ajax + django. В шаблоне имею следующую логику: если пользователь не авторизован (if user.is_anonymous) отображается форма регистрации, (if user. is_authecated) отображается приветствие и кнопка выхода. Соответственно хочу сделать аутентификации без перезагрузки страницы. Вопрос следующий- насколько я понимаю, чтобы проверились условия, нужно заново перезагружать шаблон? Следовательно единственный способ - возвращать в ajax запрос данные, к примеру логин пользователя в случае успеха авторизации, и затем в js - форму логина заменить приветствием. Или все же можно добиться "перестройки" целой страницы, при этом без перезагрузки страницы). Всё что я нашёл в интернете и документации - возвращение в ajax httpresponse или jsonresponse
  • Вопрос задан
  • 171 просмотр
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Следовательно единственный способ - возвращать в ajax запрос данные, к примеру логин пользователя в случае успеха авторизации, и затем в js - форму логина заменить приветствием.

Это правильный подход.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
FeNUMe
@FeNUMe
Как вы себе представляете перестройку уже загруженного html со стороны сервера? Тут либо ajax-запрос и редактирование блока с помощью js, либо перезагрузка страницы после получения ответа на запрос.
Данные вам возвращать не нужно, достаточно статуса "успешно/ошибка", ведь логин пользователя у вас уже есть, вы его отправляете для проверки.
Ответ написан
Комментировать
@antonksa
Как сказал Сергей - вы на правильном пути. Начните только сразу использовать JS фреймворки, например Vue, это сэкономит вам пару килограммов нервов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы