parameters: (self, view, cacheable=False)
return_statement: return update_wrapper(inner, view)
docstring: 为所有 View 提供公共装饰，访问权限验证
          在Site.get_urls 方法中使用该方法
  
          :param cacheable: 默认情况下，所有的 AdminView 会通过 ``never_cache`` 标记成不做缓存，如果确实需要缓存，可以设置 cacheable=True
docstring_summary: 为所有 View 提供公共装饰，访问权限验证
          在Site.get_urls 方法中使用该方法
docstring_tokens: 为所有 View 提供公共装饰，访问权限验证 在Site . get_urls 方法中使用该方法
function: 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)
function_tokens: def site_view_decor ( self , view , cacheable = False ) : 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 )