Ich arbeite an einem kleinen Projekt, und ich wollte dem Endbenutzer mehrere Caching-Optionen zur Verfügung stellen. Ich dachte, mit Django ist es ziemlich einfach, memcached für Datenbank oder Datei-basierte Caching zu tauschen. Meine Memcached-Implementierung funktioniert ohne Probleme wie ein Champion. Ich habe Zeitstempel auf meinen Seiten platziert, und curl zeigt konsequent die älteren Zeitstempel an Orten, an denen ich Caching richtig funktionieren soll. Wenn ich jedoch zum Datenbank-Caching übergehe, erhalte ich keine Einträge in der Datenbank, und das Caching funktioniert offensichtlich nicht.
Nach dem, was ich in der Dokumentation sehe, sollte alles, was notwendig ist, um das Backend von ändern:
CACHE_BACKEND = 'memcached://localhost:11211'
An:
CACHE_BACKEND = 'db://cache_table'
Die Tabelle existiert, nachdem ich die erforderliche Zeile manage.py (createcachetable) ausgeführt habe, und ich kann sie problemlos anzeigen. Ich bin gerade in der Testphase und verwende daher sqlite3, aber das sollte keine Rolle spielen, soweit ich das beurteilen kann. Ich kann bestätigen, dass die Tabelle völlig leer ist und zu keinem Zeitpunkt beschrieben wurde. Außerdem sind, wie bereits erwähnt, meine Zeitstempel ebenfalls "falsch", was ein weiterer Beweis dafür ist, dass etwas nicht stimmt.
Haben Sie eine Idee? Ich benutze sqlite3, Django 1.0.2, python 2.6, serviert über Apache derzeit auf einem Ubuntu Jaunty Maschine. Ich bin sicher, ich bin nur beschönigend über etwas einfach. Vielen Dank für jede Hilfe zur Verfügung gestellt.