django-cache-purge-hooks

Screenshot der Software:
django-cache-purge-hooks
Softwarebeschreibung:
Version: 0.3.0
Upload-Datum: 14 Apr 15
Entwickler: Shu Zong Chen
Lizenz: Frei
Popularität: 1

Rating: 3.5/5 (Total Votes: 2)

django-Cache-Säuberung-Haken ist eine wiederverwendbare Django-Applikation, um eine Cache-Annullierung zu behandeln.
Diese App bietet im Grunde einen Mechanismus, um leicht in die Modell Rückrufe Haken an den Front-End-Cache ungültig, wenn nötig.
Derzeit sind nur Lack Backend implementiert, aber das Design wurde mit anderen möglichen Backends im Hinterkopf entwickelt.
Verwendung
Add 'cache_purge_hooks ", um Ihre INSTALLED_APPS.
#Unser pretend Modell
Klasse Post (models.Model):
& Nbsp; title = models.CharField (max_length = 200)
& Nbsp; slug = models.SlugField (unique = True, max_length = 200)
& Nbsp; body = models.TextField (leer = True, null = True)
von cache_purge_hooks Import cache_purge_hook
cache_purge_hook (Post)
Wie oben gezeigt, enthält cache_purge_hooks Modul eine Funktion cache_purge_hook. Übergeben Sie als erstes Argument ein Modell. Die Cache-Mechanismus Piggy-Rücken get_absolute_url () -Methode des Modellinstanz und löscht den Cache-Backend für die jeweilige URL.
Wenn ein Beispiel mehrere verwandte URLs hat, definieren Sie eine benutzerdefinierte get_absolute_urls () -Methode, die eine Liste von URLs zu entkräften zurückgibt:
Klasse Kategorie (models.Model):
& Nbsp; name = models.CharField (max_length = 200)
& Nbsp; slug = models.SlugField (unique = True, max_length = 200)
& Nbsp; title = models.CharField (max_length = 127, blank = True)
& Nbsp; def get_absolute_url (Selbst-):
& Nbsp; & nbsp; & nbsp; zurück Reverse ("Kategorie", kwargs = {
& Nbsp; & nbsp; & nbsp; & nbsp; & nbsp; "Kategorie": self.slug
& Nbsp; & nbsp; & nbsp; })
& Nbsp; def get_absolute_urls (Selbst-):
& Nbsp; & nbsp; & nbsp; gau = self.get_absolute_url ()
& Nbsp; & nbsp; & nbsp; zurück [gau, Reverse ("blog_home '),]
Im obigen Modell haben wir einen Blog-Post Kategorie Modell. Es ist get_absolute_url () wird auf eine bestimmte benannte Route in urls.py definiert gebunden, sondern eine Änderung der Kategorie müssen auch in der Blog-Homepage zum Ausdruck kommen (sagen wir zum Beispiel die Homepage enthält eine Tag-Cloud von allen Kategorien). Das Seite müssen für ungültig erklärt, wenn diese Informationen geändert werden.
Beachten Sie, müssen Sie auch ausdrücklich get_absolute_url (Wert) zu greifen. Es wird nicht aufgerufen, wenn get_absolute_urls () existiert.
Wenn das nicht nach Ihrem Geschmack, können Sie auch als zweites Argument an eine Funktion, die eine Instanz und gibt eine Liste von URLs purge_related_blog weiterzugeben.
Zum Beispiel:
von facebook_comments.models importieren FacebookCommentCache
def purge_related_blog (Beispiel):
& Nbsp; pr = urlparse.urlparse (instance.url)
& Nbsp; zurück [pr.path,]
cache_purge_hook (FacebookCommentCache, purge_related_blog)
Dies ist auch sinnvoll, da in dem obigen Fall wird die Seite eine weitere wiederverwendbare app (facebook_cached_comments) Verwendung. . Das ist viel besser als Hacking eine Dritthersteller-Code, um eine get_absolue_urls stellen ()

Anforderungen :

  • Python
  • Django
  • python-Lack

Andere Software von Entwickler Shu Zong Chen

Kommentare zu django-cache-purge-hooks

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!