引数としてクラスメソッドのデコレータにクラスフィールドを渡すにはどうすればよいですか?私がやりたいことは次のようなものです:
class Client(object):
def __init__(self, url):
self.url = url
@check_authorization("some_attr", self.url)
def get(self):
do_work()
self.url
デコレータに渡すための自分が存在しないと文句を言います。これを回避する方法はありますか?
それはあなたがコントロールできるカスタムのデコレーターですか、それとも変更できないものですか?
—
Joel Cornett 2012
それは私のデコレータなので、私はそれを完全に制御できます
—
Mark
それは問題だと思うinitの前に呼び出されます...
—
Joran Beasley 2012
問題は、関数定義時に自己が存在しないことです。それを部分関数にする必要があります。
—
アンチモン2012