Mercurial > public > sg101
view gpp/antispam/models.py @ 479:32cec6cd8808
Refactor RateLimiter so that if Redis is not running, everything still runs normally (minus the rate limiting protection). My assumption that creating a Redis connection would throw an exception if Redis wasn't running was wrong. The exceptions actually occur when you issue a command. This is for #224.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Sun, 25 Sep 2011 00:49:05 +0000 |
parents | 8c1832b9d815 |
children |
line wrap: on
line source
"""Models for the antispam application.""" from django.db import models from django.core.cache import cache from antispam import SPAM_PHRASE_KEY class SpamPhrase(models.Model): """A SpamPhrase is a string that is checked for in user input. User input containing a SpamPhrase should be blocked and flagged. """ phrase = models.CharField(max_length=64) class Meta: ordering = ('phrase', ) def __unicode__(self): return self.phrase def save(self, *args, **kwargs): cache.delete(SPAM_PHRASE_KEY) self.phrase = self.phrase.lower() super(SpamPhrase, self).save(*args, **kwargs)