from __future__ import unicode_literals import logging from django.apps import apps from django.contrib.auth import get_user_model from mayan.celery import app logger = logging.getLogger(__name__) @app.task(ignore_result=True) def task_cache_purge(cache_id, user_id=None): Cache = apps.get_model( app_label='file_caching', model_name='Cache' ) User = get_user_model() cache = Cache.objects.get(pk=cache_id) user = User.objects.get(pk=user_id) logger.info('Starting cache id %s purge', cache) cache.purge(_user=user) logger.info('Finished cache id %s purge', cache)