【发布时间】:2019-06-10 16:32:22
【问题描述】:
我有一个基类,我想在其中定义一个装饰器。该装饰器应该用于继承类。
class Upper(object):
def model_definition(self, name):
def func(create_function):
if self.loading:
model = self.load(name)
else:
model = create_function()
self.models[name] = model
return model
return func
class Lower(Upper):
@Upper.model_definition(name='example_model'):
def define_model(self):
[...]
return model
当这样做时,我收到消息model_definition() missing 1 required positional argument: 'self'。正确的做法是什么?
【问题讨论】: