我想在装饰器中定义一个装饰器,它最终将装饰传递该类实例的参数的类方法。这是我真正想要做的一个例子。将参数传递给装饰器的类方法将被装饰
from functools import wraps
def user_permission(myname):
def decorator(f):
@wraps(f)
def decorated(*args,**argws):
if myname == 'My Name':
return f(*args,**argws)
else:
return "Not Permitted"
return decorated
return decorator
我的经理类定义为:
class Manager(flask.views.MethodView):
def __init__(self,name):
self.name = name
@user_permission(self.my_name)
def post(self):
return "Response"
def get(self):
return "Response"
我所要做的是把类变量来装饰。是的,“自我”没有被定义,但“@ decorator.user_permission(self.my_name)”是我正在尝试,因为我还没有解决我的问题。
我从HERE找不到解决方案。 请问有人知道这些东西吗?
哦,是啊! 谢谢。我真的忘了那件事。 – ln2khanal 2013-03-21 09:41:06