我使用语法Query.select_from()
体验了缓慢的sqlalchemy子查询。基于这种经验,我希望每次在代码库中使用某些语法时都会收到警告。例如,当程序员在下面添加此代码时,我想收到警告。
q = session.query(Address).select_from(User).\
join(User.addresses).\
filter(User.name == 'ed')
有没有可以做到这一点的linter或工具?
理想情况下,您可以在远程Git repo托管服务器like this one上设置预接收挂钩,以便读取推送文件和grep“query.*\.select_from
”:如果检测到,该挂钩将拒绝推送。
如果您无权访问远程服务器(例如GitHub),则需要设置webhook。
另一种方法是将pre-push
hook部署到所有客户端,并在那里进行检查,但这可能被绕过,或者可能无法部署到每个人。
服务器端挂钩/ webhook更安全。