1

我有使用语法的慢 sqlalchemy 子查询的经验Query.select_from()。基于这种经验,我希望每次在我们的代码库中使用某些语法时都会收到警告。例如,当程序员在下面添加此代码时,我想得到警告。

q = session.query(Address).select_from(User).\
    join(User.addresses).\
    filter(User.name == 'ed')

是否有任何 linter 或工具可以做到这一点?

4

1 回答 1

0

理想情况下,您会在远程 Git 存储库托管服务器上设置一个预接收挂钩,就像这样,以便读取推送的文件并 grep 查找“ query.*\.select_from”:如果检测到,该挂钩将拒绝推送。

如果您无权访问远程服务器(例如 GitHub),则需要设置一个webhook

另一种方法是为所有客户端部署一个pre-push钩子,并在那里进行检查,但这可能会被绕过,或者不能部署到每个人。
服务器端钩子/网络钩子更安全。

于 2018-08-30T04:54:30.667 回答