Changeset 3049
- Timestamp:
- 06/01/06 17:25:06 (2 years ago)
- Files:
-
- django/trunk/django/conf/global_settings.py (modified) (1 diff)
- django/trunk/django/contrib/sessions/middleware.py (modified) (1 diff)
- django/trunk/docs/sessions.txt (modified) (2 diffs)
- django/trunk/docs/settings.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
django/trunk/django/conf/global_settings.py
r2980 r3049 236 236 SESSION_COOKIE_DOMAIN = None # A string like ".lawrence.com", or None for standard domain cookie. 237 237 SESSION_SAVE_EVERY_REQUEST = False # Whether to save the session data on every request. 238 SESSION_EXPIRE_AT_BROWSER_CLOSE = False # Whether sessions expire when a user closes his browser. 238 239 239 240 ######### django/trunk/django/contrib/sessions/middleware.py
r2809 r3049 80 80 if modified or settings.SESSION_SAVE_EVERY_REQUEST: 81 81 session_key = request.session.session_key or Session.objects.get_new_session_key() 82 if settings.SESSION_EXPIRE_AT_BROWSER_CLOSE: 83 max_age = None 84 expires = None 85 else: 86 max_age = settings.SESSION_COOKIE_AGE 87 expires = datetime.datetime.strftime(datetime.datetime.utcnow() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE), "%a, %d-%b-%Y %H:%M:%S GMT") 82 88 new_session = Session.objects.save(session_key, request.session._session, 83 89 datetime.datetime.now() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE)) 84 expires = datetime.datetime.strftime(datetime.datetime.utcnow() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE), "%a, %d-%b-%Y %H:%M:%S GMT")85 90 response.set_cookie(settings.SESSION_COOKIE_NAME, session_key, 86 max_age= settings.SESSION_COOKIE_AGE, expires=expires, domain=settings.SESSION_COOKIE_DOMAIN)91 max_age=max_age, expires=expires, domain=settings.SESSION_COOKIE_DOMAIN) 87 92 return response django/trunk/docs/sessions.txt
r2980 r3049 198 198 session cookie is sent. 199 199 200 Browser-length sessions vs. persistent sessions 201 =============================================== 202 203 You can control whether the session framework uses browser-length sessions vs. 204 persistent sessions with the ``SESSION_EXPIRE_AT_BROWSER_CLOSE`` setting. 205 206 By default, ``SESSION_EXPIRE_AT_BROWSER_CLOSE`` is set to ``False``, which 207 means session cookies will be stored in users' browsers for as long as 208 ``SESSION_COOKIE_AGE``. Use this if you don't want people to have to log in 209 every time they open a browser. 210 211 If ``SESSION_EXPIRE_AT_BROWSER_CLOSE`` is set to ``True``, Django will use 212 browser-length cookies -- cookies that expire as soon as the user closes his or 213 her browser. Use this if you want people to have to log in every time they open 214 a browser. 215 200 216 Settings 201 217 ======== … … 225 241 226 242 The name of the cookie to use for sessions. This can be whatever you want. 243 244 SESSION_EXPIRE_AT_BROWSER_CLOSE 245 ------------------------------- 246 247 Default: ``False`` 248 249 Whether to expire the session when the user closes his or her browser. See 250 "Browser-length sessions vs. persistent sessions" above. 227 251 228 252 SESSION_SAVE_EVERY_REQUEST django/trunk/docs/settings.txt
r2958 r3049 604 604 See the `session docs`_. 605 605 606 SESSION_EXPIRE_AT_BROWSER_CLOSE 607 ------------------------------- 608 609 Default: ``False`` 610 611 Whether to expire the session when the user closes his or her browser. 612 See the `session docs`_. 613 606 614 SESSION_SAVE_EVERY_REQUEST 607 615 --------------------------
