Как я устанавливаю переменные сеанса при входе в систему с помощью django-регистрации и автора?

Я использую django-регистрацию для входа пользователей в мое приложение. Та часть хорошо работает. Часть, которую я не могу выяснить, - то, как установить пользовательские переменные сеанса, когда пользователь входит в систему. Например, я хотел бы заполнить переменные, содержащие данные UserProfile, а также вывод нескольких других функций. Затем я смог бы использовать ту информацию в последующих представлениях/шаблонах.

Если бы кто-либо может указать на меня на учебное руководство онлайн или отправить некоторый пример кода, который был бы большим.

Я использую django 1.1 и Python 2.6

8
задан Gabriel Hurley 15 February 2010 в 21:53
поделиться

2 ответа

Если вам не нужно постоянное хранение пользовательских данных (только дополнительные данные сеанса), посмотрите:

http: //docs.djangoproject .com / en / dev / themes / http / sessions /

Фреймворк сессий, скорее всего, уже будет включен, если вы используете django.contrib.auth.

Если вам нужно постоянное хранение дополнительных пользовательских данных (не только в сеансе, но и в базе данных), вы сохраните их в другой модели «профиля»:

http://docs.djangoproject.com/en / dev / themes / auth / # storing-additional-information-about-users

3
ответ дан 6 December 2019 в 00:06
поделиться

Я понимаю, что @stefanw предоставил вам альтернативное решение, но чтобы ответить на исходный вопрос:

Установить данные сеанса при входе в систему сложно, потому что это самый простой способ укажите, что данные находятся в вашей функции просмотра, а конкретная функция просмотра, которую вы хотите изменить, является частью приложения contrib.django.auth.

Итак, у вас будут следующие варианты:

  • Создайте небольшой класс промежуточного программного обеспечения для установки данных сеанса.
  • Создайте тег шаблона или другой фрагмент кода, который не может быть интегрирован в шаблон входа в систему или последующую страницу, на которой будут установлены требуемые данные.
  • Напишите свою собственную функцию просмотра входа в систему (на самом деле это довольно просто).

Счастливого джанго-инга!

1
ответ дан 6 December 2019 в 00:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: