私はいくつかのコードをリファクタリングしていて、リフレクションを少し使用できると思いました! だから、私は今のところこれを持っています:
def f(self, clazz):
[...]
boolean = False
if hasattr(clazz_instace, 'some_attribute'):
setattr(clazz_instace, 'some_attribute', True)
boolean = True
if boolean:
result = getattr(clazz_instace, 'another_method')(None, request=request)
return result['objects']
sorted_objects = getattr(clazz_instace, 'One_more_method')(request)
result = getattr(clazz_instace, 'another_method')(sorted_objects, request=request)
return [...]
私の質問は、clazz_instance に関して検索しているメソッドを示すために使用した文字列についてです。私がしたことを行うための別の最良の方法があるかどうか知りたいです(具体的には動的な方法で)?つまり、私が行ったようにメソッドの名前を文字列のように直接配置する代わりに、これらのメソッドを別の方法で動的に検証できれば本当にいいでしょう。
素敵なアイデアを教えていただけませんか?どのようにしますか?
前もって感謝します!!!