diango中让装了装饰器的函数的名字不是inner,而是原来的名字

让装了装饰器的函数的名字不是inner,而是原来的名字

from functools import wraps

def wrapper(func):
    @wraps(func)  # 复制了原来函数的名字和注释
	def inner(request,*arg,**kwargs):
        # 之前
        ret = func(request,*arg,**kwargs)
        # 之后
        return ret 
    return inner

@wrapper  # f1 = wrapper(f1)
def f1(request):
    pass

f1.__name__  #  inner _> f1   #让装了装饰器的函数的名字不是inner,而是原来的名字
posted @ 2019-12-19 18:31  谢国宏  阅读(212)  评论(0编辑  收藏  举报