Согласно документации Django, «если для SESSION_EXPIRE_AT_BROWSER_CLOSE задано значение True, Django будет использовать файлы cookie длины браузера - файлы cookie, срок действия которых истекает, как только пользователь закрывает свой браузер. Используйте этот параметр, если вы хотите, чтобы люди входили в систему. каждый раз, когда они открывают браузер. "
И это то, что я сделал, добавив следующую строку в мой файл settings.py (и перезапустив сервер):
# Close the session when user closes the browser
SESSION_EXPIRE_AT_BROWSER_CLOSE = True
Затем я вошел на страницу, которая проверяет, аутентифицирован ли пользователь, и затем закрыл браузер. Когда я снова открываю свой браузер и захожу на ту же страницу, он не запрашивает имя пользователя и пароль, потому что он, по-видимому, проходит следующий тест:
def check_teacher(request):
result = {}
if request.user.is_authenticated():
...
Что я делаю не так или что мне не хватает? Есть предложения?
Я использую пре-альфа SVN-13858 Django версии 1.3 в моей системе Ubuntu GNU / Linux 10.10 и запускаю приведенный выше пример с использованием сервера разработки Django.