Fixed #7517 -- Added code to remove Sites from the site cache when they are deleted. Thanks to Marc Fargas for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@7724 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
b83fcacfcc
commit
1fc0077a95
|
@ -44,6 +44,15 @@ class Site(models.Model):
|
|||
def __unicode__(self):
|
||||
return self.domain
|
||||
|
||||
def delete(self):
|
||||
pk = self.pk
|
||||
super(Site, self).delete()
|
||||
try:
|
||||
del(SITE_CACHE[pk])
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
|
||||
class RequestSite(object):
|
||||
"""
|
||||
A class that shares the primary interface of Site (i.e., it has
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
"""
|
||||
>>> # Make sure that get_current() does not return a deleted Site object.
|
||||
>>> from django.contrib.sites.models import Site
|
||||
>>> s = Site.objects.get_current()
|
||||
>>> s
|
||||
<Site: example.com>
|
||||
|
||||
>>> s.delete()
|
||||
>>> Site.objects.get_current()
|
||||
Traceback (most recent call last):
|
||||
...
|
||||
DoesNotExist: Site matching query does not exist.
|
||||
"""
|
Loading…
Reference in New Issue