mirror of
https://github.com/Hopiu/wagtail.git
synced 2026-04-02 22:30:25 +00:00
Implement purge_urls_from_cache
This commit is contained in:
parent
dcfd45c326
commit
4570653d0c
1 changed files with 15 additions and 6 deletions
|
|
@ -56,18 +56,27 @@ def get_backends(backend_settings=None, backends=None):
|
|||
|
||||
|
||||
def purge_url_from_cache(url, backend_settings=None, backends=None):
|
||||
for backend_name, backend in get_backends(backend_settings=backend_settings, backends=backends).items():
|
||||
for backend_name, backend in get_backends(backend_settings, backends).items():
|
||||
logger.info("[%s] Purging URL: %s", backend_name, url)
|
||||
backend.purge(url)
|
||||
|
||||
|
||||
def purge_urls_from_cache(urls, backend_settings=None, backends=None):
|
||||
for backend_name, backend in get_backends(backend_settings, backends).items():
|
||||
for url in urls:
|
||||
logger.info("[%s] Purging URL: %s", backend_name, url)
|
||||
|
||||
backend.purge_batch(urls)
|
||||
|
||||
|
||||
def purge_page_from_cache(page, backend_settings=None, backends=None):
|
||||
page_url = page.full_url
|
||||
if page_url is None: # nothing to be done if the page has no routable URL
|
||||
return
|
||||
|
||||
for backend_name, backend in get_backends(backend_settings=backend_settings, backends=backends).items():
|
||||
# Purge cached paths from cache
|
||||
for path in page.specific.get_cached_paths():
|
||||
logger.info("[%s] Purging URL: %s", backend_name, page_url + path[1:])
|
||||
backend.purge(page_url + path[1:])
|
||||
# Purge cached paths from cache
|
||||
urls = [
|
||||
page_url + path[1:]
|
||||
for path in page.specific.get_cached_paths()
|
||||
]
|
||||
purge_urls_from_cache(urls, backend_settings, backends)
|
||||
|
|
|
|||
Loading…
Reference in a new issue