monkey patching with @classmethod

gentlestone tibor.beck at hotmail.com
Wed Mar 3 06:57:13 EST 2010


Hi, is there some well-known problems with class method monkey
patching?
I've got this error message:
unbound method get_pocet_neocislovanych() must be called with Pozemok
instance as first argument (got Subjekt instance instead)
The method is declared as:
@classmethod
@monkeypatch(Dokument)
def get_pocet_neocislovanych(cls, subjekt):
 return cls.objects.filter(subjekt = subjekt, cislo__isnull =
True).count() # or pass, this line is not important
and the monkey patch decorator is declared as:
def monkeypatch(cls):
 def decorator(func):
 setattr(cls, func.__name__, func)
 return func
 return decorator
If I move the method to class declaration (whitout monkey patching),
everything is ok, but only if I've restarted the server.


More information about the Python-list mailing list

AltStyle によって変換されたページ (->オリジナル) /