如何在现有的peewee查询中添加新的“.where()”?

时间:2016-02-17 09:26:03

标签: python orm where peewee

我正在尝试在现有的peewee查询中添加一个新的.where而我不能。使用调试器我发现创建查询后SQL没有更改。

我的代码:

query = Model.select() \
  .where(Model.year << args.years)
if args.models:
  query.where(Model.title << args.models)
if args.company:
  query.where(Model.company << args.company)
 else:
  query.where(Model.company.is_null(True))
if args.make:
  query.where(Model.make << args.make)

1 个答案:

答案 0 :(得分:1)

Peewee没有变异,所以你只需要捕获后续调用的返回值:

if args.models:
  query = query.where(Model.title << args.models)  # Note the query =