from django.core import validators
from django.conf import settings
+import django.db.models.signals
class GitURLValidator(validators.URLValidator):
import re
message=models.CharField(max_length=240)
pathname = models.FilePathField(max_length=255, blank=True)
lineno = models.IntegerField(null=True)
+
+def invalidate_cache(**kwargs):
+ from django.core.cache import cache
+ try:
+ cache.clear()
+ except Exception as e:
+ print "Problem with cache backend: Failed to clear cache"
+ pass
+
+django.db.models.signals.post_save.connect(invalidate_cache)
+django.db.models.signals.post_delete.connect(invalidate_cache)
for key, val in request.GET.iteritems():
cache_name = cache_name + str(key) + str(val)
+ for key, val in kwargs.iteritems():
+ cache_name = cache_name + str(key) + str(val)
+
data = cache.get(cache_name)
if data:
except FieldError:
print "Error: Requested field does not exist"
-
data = json.dumps(data, indent=2, cls=DjangoJSONEncoder)
- cache.set(cache_name, data, 10)
+ cache.set(cache_name, data, 60*30)
return data