1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | from django.conf.urls.defaults import url
from django.views.decorators.cache import never_cache
def never_cache_patterns(prefix, *args):
pattern_list = [], tterns,
for t in args:
if isinstance(t, (list, tuple)):
t = url(prefix=prefix, *t)
elif isinstance(t, RegexURLPattern):
t.add_prefix(prefix)
t._callback = never_cache(t.callback)
pattern_list.append(t)
return pattern_list
urlpatterns = never_cache_patterns('',
(r'foo/$', 'myview')
)
|
More like this
- Debug view: show available named URL patterns by simon 3 years, 1 month ago
- Cache Any Function by jeffwheeler 5 years, 2 months ago
- Automatic urls for static pages by jibbolo 1 year, 6 months ago
- Better Static Image Serving With Fallback by menendez 2 years, 2 months ago
- Get the Django decorator/middleware cache key for given URL by s29 6 months, 2 weeks ago
Comments
How is that better than the following code: urlpatterns = patterns('', (r'foo/$', never_cache(myview)) )
#
buriy: less code. Just as different as to use patters('common.prefix', ...)
#
Yeah, I basically didn't want to have to put never_cache() around every single URL entry for my site's JSON API (of which there are 30 or so functions). Much easier to do it once and never touch it again.
#