Python sqlalchemy根据表定义自动扩展查询、更新或插入

Python sqlalchemy根据表定义自动扩展查询、更新或插入,python,sqlalchemy,Python,Sqlalchemy,在我的应用程序中,我有一个mixin,它定义了两个字段,比如开始日期和结束日期。我已经将这个mixin添加到所有需要这些字段的表声明中 我还定义了一个函数,该函数返回过滤器(条件),以测试时间戳(例如现在)是否为>=start\u date和

在我的应用程序中,我有一个mixin,它定义了两个字段,比如开始日期和结束日期。我已经将这个mixin添加到所有需要这些字段的表声明中

我还定义了一个函数,该函数返回过滤器(条件),以测试时间戳(例如现在)是否为>=start\u date和 然而,有时我或我的同事忘记添加过滤器,我想知道是否有可能自动扩展此类表上的任何查询。例如,当SQLalchemy“编译”语句时,它会调用mixin中的附加函数。我在这里使用“compile”只是作为一个例子,实际上我不知道什么时候或者如何最好地做到这一点

你知道如何做到这一点吗

如果它适用于SELECT,那么它是否也适用于INSERT和UPDATE

非常感谢你的帮助

尤尔根看看这个。您可以更改private方法中表示的条件,以引用开始日期和结束日期。 请注意,此查询效率较低,因为它会覆盖get方法以绕过标识映射。 我不确定
enable\u断言
false调用的作用;我建议在继续之前先了解这一点。

看看这个。您可以更改private方法中表示的条件,以引用开始日期和结束日期。 请注意,此查询效率较低,因为它会覆盖get方法以绕过标识映射。
我不确定
enable\u断言
false调用的作用;我建议在继续之前理解这一点。

我尝试扩展查询,但遇到了困难。最后(不幸的是),我回到了以前的方法,即小助手函数返回过滤器并将其应用于查询

我仍然希望找到一种方法,如果表(基)具有某些列,则自动添加某些过滤器


Juergen

我尝试扩展查询,但遇到了困难。最后(不幸的是),我回到了以前的方法,即小助手函数返回过滤器并将其应用于查询

我仍然希望找到一种方法,如果表(基)具有某些列,则自动添加某些过滤器

尤尔根