Ich bin mir bewusst, dass Sie Sitzungsvariablen mit verwenden können request.session['variable_name']
, aber es scheint keine Möglichkeit zu geben, die Sitzungs-ID auf ähnliche Weise als Variable abzurufen. Ist das irgendwo dokumentiert? Ich kann es nicht finden Danke für Ihre Hilfe!
85
request.session._session_key
gemäß der Antwort von @Viniciusrequest.session.session_key
funktioniert gut in Django 1.6.request.session.session_key
funktioniert auch gut in Django 1.7.request.session._get_or_create_session_key()
da es vorkommen kann, dass noch keine ID vorhanden ist.Django-Sitzungen speichern ihren Schlüssel in einem Cookie. Zumindest seine Middleware extrahiert es so:
quelle
in Django> = 1.4 benutze:
quelle
Dadurch erhalten Sie entweder eine Sitzungs-ID oder erstellen eine für Sie. Wenn Sie dies tun
dir(request.session)
, erhalten Sie viele nützliche Methoden.quelle
Verwenden:
quelle
Um den Sitzungsschlüssel zuverlässig abzurufen, müssen Sie sicherstellen, dass die Sitzung zuerst erstellt wurde. In der Dokumentation wird eine
.create()
Sitzungsmethode erwähnt , mit der sichergestellt werden kann, dass ein Sitzungsschlüssel vorhanden ist:quelle
In Django 1.8:
und
Beide funktionieren korrekt.
quelle
Sie können auch Ihre Sitzungen einchecken :
quelle