def require(func):
@functools.wraps(func)
async def wrapper(*args):
if isinstance(args[-1], AbstractView):
request = args[-1].request
else:
request = args[-1]
has_perm = await permits(request, 'Administrator')
if not has_perm:
raise web.HTTPForbidden()
if isinstance(args, AbstractView):
return await func(*args)
return await func(*args)
return wrapper
评论列表
文章目录