Django框架下在URLconf中指定视图缓存的方法
将视图与缓存系统进行了耦合,从几个方面来说并不理想。例如,你可能想在某个无缓存的站点中重用该视图函数,或者你可能想将该视图发布给那些不想通过缓存使用它们的人。解决这些问题的方法是在URLconf中指定视图缓存,而不是紧挨着这些视图函数本身来指定。
完成这项工作非常简单:在URLconf中用到这些视图函数的时候简单地包裹一个cache_page。以下是刚才用到过的URLconf:这是之前的URLconf:
urlpatterns=('',
(r'^foo/(\d{1,2})/$',my_view),
)
以下是同一个URLconf,不过用cache_page包裹了my_view:
fromdjango.views.decorators.cacheimportcache_page
urlpatterns=('',
(r'^foo/(\d{1,2})/$',cache_page(my_view,60*15)),
)
如果采取这种方法,不要忘记在URLconf中导入cache_page。