gpt4 book ai didi

Python&Peewee - 动态 where 子句

转载 作者:行者123 更新时间:2023-11-28 23:11:28 25 4
gpt4 key购买 nike

我目前正在使用 Flask & Peewee。恕我直言,这是一个很好的组合,但现在我发现 peewee 对于我的项目来说似乎“很弱”。可能是我,想错了:)

下面的代码很好地描述了我的问题。

# dynamic data from somewhere outside my application 
# (does not really matter from where)
# how data really look like
dynamicInput = [(fieldname1 == 'abc'),(fieldname2 == 'def')]

# how data should look like (in a dynamic way)
dynamicInput = [(databasetable.fieldname1 == 'abc'), (databasetable.fieldname2 == 'def')]

# query database with peewee query
model = self.action_meta.model_clothing.select().where(dynamicInput).get()

由于缺少数据库表引用 where 子句不可用查询有用的结果。通过数据库表引用,我的意思是像数据库表.fieldname。

所以问题是我如何基于简单的字典/列表(键值对)动态创建有效的 where 子句。

最佳答案

只需使用 DatabaseTable._meta.fields[field_name] 或 getattr(DatabaseTable, field_name) 来获取字段对象。您可以通过将字段对象与运算符和值组合来动态构造表达式。

关于Python&Peewee - 动态 where 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45776599/

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