13 lines
409 B
Python
13 lines
409 B
Python
from django.utils.crypto import md5
|
|
|
|
TEMPLATE_FRAGMENT_KEY_TEMPLATE = "template.cache.%s.%s"
|
|
|
|
|
|
def make_template_fragment_key(fragment_name, vary_on=None):
|
|
hasher = md5(usedforsecurity=False)
|
|
if vary_on is not None:
|
|
for arg in vary_on:
|
|
hasher.update(str(arg).encode())
|
|
hasher.update(b":")
|
|
return TEMPLATE_FRAGMENT_KEY_TEMPLATE % (fragment_name, hasher.hexdigest())
|