Могу ли я создать вход в сеанс с помощью django?

#python #django #django-models #django-rest-framework #django-views

#питон #джанго #django-модели #django-rest-фреймворк #django-просмотры

Вопрос:

по сути, я хочу разрешить анонимному пользователю входить на веб-сайт и не создавать профиль, но при желании могу сохранить сеанс и вернуться в любое время

Ответ №1:

вы можете использовать сеансы django. Вы могли бы использовать что — то вроде …

 from datetime import datetime
 

Когда они войдут в систему, используйте это, чтобы начать сеанс.

 request.session['user'] = datetime.now().strftime("%d-%m-%Y %H:%M:%S")
 

Затем, чтобы проверить, есть ли у текущего пользователя сеанс, выполните следующие действия

 if resquest.session.get('user'):
    # then continue the session
 

если вы хотите завершить сеанс, используйте

  del request.session['user']
 

в установленных приложениях в настройках.py, который вам нужен.

 'django.contrib.sessions',
 

В вашем промежуточном программном обеспечении вам нужно

 'django.contrib.sessions.middleware.SessionMiddleware',
 

Поэтому вам нужно проверить, запущен ли сеанс, а если нет, то начать его.
Например, в вашем домашнем представлении или любом другом представлении в начале представления, например, вы могли бы иметь

 if resquest.session.get('user'):
    # Do whatever you need to do to continue the current session
else:
    request.session['user'] = datetime.now().strftime("%d-%m-%Y %H:%M:%S")
    # Now you have started a new session. start doing what you need to do
 

Комментарии:

1. Спасибо, теперь я понимаю это, но я не могу найти функцию входа в мое приложение

2. Это только анонимные пользователи или пользователи с профилем тоже?

3. Только анонимные пользователи

4. если это только анонимные пользователи, вам не нужна функция входа. просто проверьте наличие сеанса в каждом представлении, которое вызывается из интерфейса. Я немного обновлю свой awnswer