我要添加裝飾與我的蟒蛇靜態方法,像以下:蟒蛇裝飾和靜態方法
class AdminPanelModel(db.Model):
id = db.Column('id', db.Integer, primary_key=True)
visible = db.Column(db.Boolean,)
def decor_init(func):
def func_wrapper(*kargs, **kwargs):
for l in model.all(): #internal logic
pass
return func(*kargs, **kwargs)
return func_wrapper
@staticmethod
@decor_init
def all_newscollection_at_adminpanel():
pass
我嘗試添加@staticmethod
我的裝飾,試圖使函數調用,比如下面func(AdminPanelModel,*kargs, **kwargs)
,但沒有運氣,仍然堅持以下錯誤消息:
TypeError: unbound method func_wrapper() must be called with AdminPanelModel instance as first argument (got nothing instead)
有沒有什麼辦法可以實現這一目標?我意識到可以通過其他方式來完成同樣的工作,但它更像是一個教育問題,而不是以某種方式完成任務。
對不起,但是你在model.all()中獲得'model' for'l的位置?我認爲你需要在你的課堂中放置裝飾器。 –
這是內部邏輯的一部分。 – sadaf2605