<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en-us" xmlns="http://www.w3.org/2005/Atom"><title>Simon Willison's Weblog: signals</title><link href="http://simonwillison.net/" rel="alternate"/><link href="http://simonwillison.net/tags/signals.atom" rel="self"/><id>http://simonwillison.net/</id><updated>2009-05-07T07:36:48+00:00</updated><author><name>Simon Willison</name></author><entry><title>mmalone's django-caching</title><link href="https://simonwillison.net/2009/May/7/mmalones/#atom-tag" rel="alternate"/><published>2009-05-07T07:36:48+00:00</published><updated>2009-05-07T07:36:48+00:00</updated><id>https://simonwillison.net/2009/May/7/mmalones/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://github.com/mmalone/django-caching"&gt;mmalone&amp;#x27;s django-caching&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
Mike Malone shares code used by Pownce to add QuerySet level caching to Django. It’s a smart implementation—a CachingQuerySet class inspects the arguments passed to get(), and if they’re just a straight forward exact PK lookup hits memcache for the object before hitting the database. Signals are used to invalidate the cache.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/caching"&gt;caching&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/mike-malone"&gt;mike-malone&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/pownce"&gt;pownce&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/querysets"&gt;querysets&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/signals"&gt;signals&lt;/a&gt;&lt;/p&gt;



</summary><category term="caching"/><category term="django"/><category term="mike-malone"/><category term="pownce"/><category term="querysets"/><category term="signals"/></entry><entry><title>Using Akismet with Django's new comments framework</title><link href="https://simonwillison.net/2008/Aug/28/sciyoshi/#atom-tag" rel="alternate"/><published>2008-08-28T10:12:25+00:00</published><updated>2008-08-28T10:12:25+00:00</updated><id>https://simonwillison.net/2008/Aug/28/sciyoshi/#atom-tag</id><summary type="html">
    
&lt;p&gt;&lt;strong&gt;&lt;a href="http://sciyoshi.com/blog/2008/aug/27/using-akismet-djangos-new-comments-framework/"&gt;Using Akismet with Django&amp;#x27;s new comments framework&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
A nice example that demonstrates two features that were recently rolled in to the Django 1.0 betas: the new signals library and the new comments framework.


    &lt;p&gt;Tags: &lt;a href="https://simonwillison.net/tags/akismet"&gt;akismet&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/comments"&gt;comments&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/django"&gt;django&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/python"&gt;python&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/signals"&gt;signals&lt;/a&gt;, &lt;a href="https://simonwillison.net/tags/spam"&gt;spam&lt;/a&gt;&lt;/p&gt;



</summary><category term="akismet"/><category term="comments"/><category term="django"/><category term="python"/><category term="signals"/><category term="spam"/></entry></feed>