2009-04-06 7 views

Antwort

4

Zuerst erstellt Django bereits ein Benutzerobjekt für Sie, sodass Sie es nicht in der Sitzung speichern müssen. Nur Zugriff als:

request.user 

Zum Beispiel, um den Benutzernamen erhalten Sie verwenden würden:

Als nächstes, wenn Sie Informationen in der Sitzung speichern wollen Sie nicht darüber Sorgen machen müssen auf der Keksebene. Schreiben Sie einfach Schlüssel/Wert-Paare in das request.session Wörterbuch.

Here are some examples aus der Django-Dokumentation.

Bearbeiten: Der Grund, dass Ihr Programm nicht reagiert, ist, weil eine KeyError-Ausnahme ausgelöst wird. 'userid' existiert nicht als Schlüssel im Sitzungswörterbuch (außer Sie haben es selbst hinzugefügt).

Aus diesem Grund ist es besser, Wörterbuch zu programmieren, liest sich wie folgt:

id = request.session.get('somekey', False) 

die falsch zurück, wenn ‚somekey‘ im Wörterbuch nicht existiert.

+0

Ihr Code ist falsch. request.session ['somekey', False] versucht einfach ('somekey', False) Tupel als Schlüssel. Es sollte erhalten werden (Schlüssel, Standard). – muhuk

+0

Bleh, danke muhuk. Mein Gehirn war schneller als mein Tippen. –

Verwandte Themen