Если вы хотите декоратор класса в python> = 2.6, вы можете сделать это
def funkyDecorator(cls):
cls.funky = 1
@funkyDecorator
class MyClass(object):
pass
или в python 2.5
MyClass = funkyDecorator(MyClass)
Но похоже, что вы заинтересованы в декораторе метода, длячто вы можете сделать это
def logDecorator(func):
def wrapper(*args, **kwargs):
print "Before", func.__name__
ret = func(*args, **kwargs)
print "After", func.__name__
return ret
return wrapper
class MyClass(object):
@logDecorator
def mymethod(self):
print "xxx"
MyClass().mymethod()
Вывод:
Before mymethod
xxx
After mymethod
Короче говоря, вы должны просто поставить @orm.reconstructor
перед определением метода