def site_view_decor(self, view, cacheable=False):
"""
??? View ?????????????
?Site.get_urls ????????
:param cacheable: ????????? AdminView ??? ``never_cache`` ????????????????????? cacheable=True
"""
def inner(request, *args, **kwargs):
if not self.has_permission(request) and getattr(view, 'need_site_permission', True):
# ???????????
_login_view = getattr(view, 'login_view', self.login_view) or self.login_view
return self.create_admin_view(_login_view)(request, *args, **kwargs)
return view(request, *args, **kwargs)
if not cacheable:
inner = never_cache(inner)
return update_wrapper(inner, view)
评论列表
文章目录