migrationutils.py 698 B

1234567891011121314151617181920212223242526272829
  1. from importlib import import_module
  2. from misago.core.cache import cache as default_cache
  3. from misago.core.cachebuster import CACHE_KEY
  4. """
  5. cache versioning utils
  6. """
  7. def _CacheVersion(apps):
  8. return apps.get_model('misago_core', 'CacheVersion')
  9. def cachebuster_register_cache(apps, cache):
  10. _CacheVersion(apps).objects.create(cache=cache)
  11. def cachebuster_unregister_cache(apps, cache):
  12. CacheVersion = _CacheVersion(apps)
  13. try:
  14. cache = CacheVersion.objects.get(cache=cache)
  15. cache.delete()
  16. except CacheVersion.DoesNotExist:
  17. raise ValueError('Cache "%s" is not registered' % cache)
  18. def delete_cachebuster_cache():
  19. default_cache.delete(CACHE_KEY)