Ich habe eine Website, auf der je nach dem vom Besucher ausgewählten Ort unterschiedliche Inhalte angezeigt werden. Beispiel: Der Benutzer gibt 55812 als Reißverschluss ein. Ich weiß, welche Stadt und welches Gebiet lat / lang ist. das heißt und geben Sie ihnen ihren für diesen Bereich relevanten Inhalt. Meine Frage ist, wie ich dies in einem Cookie speichern kann, damit sie bei ihrer Rückkehr nicht immer ihre Postleitzahl eingeben müssen.
Ich sehe es wie folgt:
- Setzen Sie dauerhafte Cookies basierend auf ihrem Bereich.
- Wenn sie den gelesenen Cookie zurückgeben, holen Sie sich die Postleitzahl.
- Geben Sie Inhalte basierend auf der Postleitzahl in ihrem Cookie zurück.
Ich kann anscheinend keine soliden Informationen zum Setzen eines Cookies finden. Jede Hilfe wird sehr geschätzt.
cookie
undrendering a template
zusammen setzen möchten, sehen diese Antwort.Antworten:
UPDATE : Überprüfen Sie Peters Antwort unten auf eine integrierte Lösung:
Dies ist ein Helfer zum Setzen eines dauerhaften Cookies:
Verwenden Sie den folgenden Code, bevor Sie eine Antwort senden.
UPDATE : Überprüfen Sie Peters Antwort unten auf eine integrierte Lösung:
quelle
Die Verwendung des Sitzungsframeworks von Django sollte die meisten Szenarien abdecken, aber Django bietet jetzt auch direkte Cookie-Manipulationsmethoden für die Anforderungs- und Antwortobjekte (sodass Sie keine Hilfsfunktion benötigen).
Cookie setzen:
Cookie abrufen:
quelle
Sie können das Cookie manuell setzen, aber je nach Anwendungsfall (und wenn Sie in Zukunft weitere Arten von persistenten / Sitzungsdaten hinzufügen möchten) ist es möglicherweise sinnvoller, die Sitzungsfunktion von Django zu verwenden . Auf diese Weise können Sie Variablen abrufen und festlegen , die intern mit dem Sitzungscookie des Benutzers verknüpft sind. Das Coole daran ist, dass, wenn Sie viele Daten speichern möchten, die an die Sitzung eines Benutzers gebunden sind, das Speichern in Cookies HTTP-Anfragen und -Antworten viel Gewicht verleiht. Bei Sitzungen ist das Sitzungscookie alles, was hin und her gesendet wird (obwohl Djangos Ende des Speicherns der Sitzungsdaten zu beachten ist).
quelle
Jeder, der daran interessiert ist, sollte die Dokumentation des Django Sessions Frameworks lesen . Es speichert eine Sitzungs-ID in den Cookies des Benutzers, ordnet jedoch alle Cookies-ähnlichen Daten Ihrer Datenbank zu. Dies ist eine Verbesserung gegenüber dem typischen Cookie-basierten Workflow für HTTP-Anforderungen.
Hier ist ein Beispiel mit einer Django-Ansicht ...
Wenn Sie die Seite immer wieder besuchen, wird der Wert von 1 auf 1 erhöht, bis Sie Ihre Cookies löschen, einen neuen Browser aufrufen, inkognito gehen oder etwas anderes tun, das Djangos Sitzungs-ID-Cookie umgeht.
quelle