[Django] Gleichbleibende Daten fürs Basistemplate

Django, Flask, Bottle, WSGI, CGI…
Antworten
metty
User
Beiträge: 99
Registriert: Samstag 13. Dezember 2008, 19:30

Hallo zusammen,

ich entwickle gerade eine Webapplikation mit Django und es funktioniert soweit auch alles, aber ein Problem habe ich noch.
Ich möchte ins Basistemplate (von dem alle anderen Templates erben) Daten einbinden, die aus der Datenbank stammen aber seitenweit gültig bzw. gleich sind.
Der Warenkorb eines Shops mit der Anzahl der darin befindlichen Artikel, wäre ein passendes Beispiel.
Ein solcher Warenkorb enthält auch auf jeder (Unter-)Seite immer die gleichen Informationen wie "Warenkorb (5 Artikel)".

Wie kann ich solche gleichbleibende Informationen ins Basistemplate einbinden, ohne "DRY" zu verletzen? Natürlich könnte ich in jedem View die Daten abfragen lassen und einsetzen lassen, aber das ist wie schon gesagt nicht "DRY". Wenn ich mich noch recht erinnern kann, bietet Django hier Inclusion-Tags, aber gibt es noch andere (weniger aufwendige) Möglichkeiten?

Danke euch.
apollo13
User
Beiträge: 827
Registriert: Samstag 5. Februar 2005, 17:53

Folgende Möglichkeiten:
  • normaler Tag
  • Inclusion Tag
  • Context-processor
nexonic

Context Processor war gerade auch mein erster Gedanke. Schau dir das am besten mal an: http://www.djangobook.com/en/2.0/chapter09/
Antworten