为什么我用 getattr 反射的方式,获得了 before 这个函数的句柄,然后调用总是说我参数不对?
要么就说 session 这个参数传进去两次,要么就说 before 这个方法需要 2 个参数,我传了 3 个
@staticmethod
def manage_rest_api():
def decorator(func):
session = http_session()
before = getattr(self, "before_response")
before(self, session=session)
rst = func(self)
return rst
return wrapper
return decorator
def before(self, session=None):
pass
说白了就是这一行:before(self, session=session),感觉我写成这样就行了 before(session=session)
有人知道为什么么?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.