angrybeanie_wagtail/env/lib/python3.12/site-packages/wagtail/utils/urlpatterns.py

18 lines
629 B
Python
Raw Normal View History

2025-07-25 21:32:16 +10:00
from functools import update_wrapper
def decorate_urlpatterns(urlpatterns, decorator):
"""Decorate all the views in the passed urlpatterns list with the given decorator"""
for pattern in urlpatterns:
if hasattr(pattern, "url_patterns"):
# this is an included RegexURLResolver; recursively decorate the views
# contained in it
decorate_urlpatterns(pattern.url_patterns, decorator)
if getattr(pattern, "callback", None):
pattern.callback = update_wrapper(
decorator(pattern.callback), pattern.callback
)
return urlpatterns