Aşağıdakine benzer bir şeyim var. Temel olarak, bir örnek yönteminin sınıfına, tanımındaki örnek yönteminde kullanılan bir dekoratörden erişmem gerekiyor.
def decorator(view):
# do something that requires view's class
print view.im_class
return view
class ModelA(object):
@decorator
def a_method(self):
# do some stuff
pass
Olduğu gibi kod şunları verir:
AttributeError: 'function' nesnesinin 'im_class' niteliği yok
Benzer soru / cevaplar buldum - Python dekoratörü, fonksiyonun bir sınıfa ait olduğunu unutmasını ve Python dekoratöründe Get sınıfını unutturuyor - ancak bunlar, ilk parametreyi yakalayarak örneği çalışma zamanında yakalayan bir geçici çözüme dayanıyor. Benim durumumda, yöntemi sınıfından toplanan bilgilere dayanarak çağıracağım, bu yüzden bir çağrının gelmesini bekleyemem.