これは私の専門分野ではありませんが、役立つかもしれません。
Allow
イントロスペクトして、装飾しているオブジェクトを見つけることができる場合があります。
>>>from django.core.urlresolvers import resolve
>>>func, args, kwargs=resolve('/edit_settings/')
>>>func
Allow
あなたは試すことができます
>>>func.func_name
ただし、必要なビュー関数が返されない場合があります。
基本的なデコレータ関数を試していたときに見つけたものは次のとおりです。
>>>def decorator(func):
... def wrapped(*args,**kwargs):
... return func(*args,**kwargs)
... wrapped.__doc__ = "Wrapped function: %s" %func.__name__
... return wrapped
>>>def add(a,b):
... return(a,b)
>>>decorated_add=decorator(add)
この場合、試しdecorated_add.func_name
てみると が返されwrapped
ました。しかし、戻る方法を見つけたかったのadd
です。doc 文字列を に追加したのでwrapped
、元の関数名を特定できました。
>>>decorated_add.func_name
wrapped
>>>decorated_add.__doc__
'Wrapped function: add'
Allow
おそらくデコレータ関数を変更することで、内観してビュー関数の名前を見つける方法を見つけることができれば幸いです。