gpt4 book ai didi

python - sqlalchemy 在表上的搜索功能作为类方法?

转载 作者:太空狗 更新时间:2023-10-30 00:26:56 25 4
gpt4 key购买 nike

假设我有一个名为 Customer 的类,它在 sqlalchemy 中定义以表示客户表。我想编写一个搜索方法,以便...

results = Customer.search(query)

会根据方法返回结果。我想以 @classmethod 的形式执行此操作吗?

@classmethod
def search(cls,query):
#do some stuff
return results

我可以使用 cls 代替 DBSession.query 吗?

DBSession.query(Customer).filter(...)
cls.query(Customer).filter(...)

最佳答案

使用

cls.query

您必须为您的模型类分配一个query_property!

您可能还想在其他模型类中使用它,因此您可能想在 model/__init__.py 某处的模型基类中执行此操作:

Base.query = Session.query_property()

然后你可以简单地写:

cls.query.filter(...)

请注意,您不再指定要查询的对象,这是通过使用 query_property 机制自动完成的。

关于python - sqlalchemy 在表上的搜索功能作为类方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8933877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com