我有不同模型实体的键的列表。例子:-
list_1 = ['<entity key of model 1>', '<entity key of model 2>', '<entity key of model 3>']
我想查询从列表中动态形成AND操作的信息。
例子:-
query = <SOME MODEL>.query(ndb.AND(<SOME MODEL>.entity == list_1[0], <SOME MODEL>.entity == list_1[1], <SOME MODEL>.entity == list_1[2]))
进行此类查询的任何帮助。
如果您的示例中的Model.entity不是重复属性,则此查询没有任何意义,但是类似这样的操作将满足您的要求:
q = Model.query()
for item in list_1:
q = q.filter(Model.entity == item)
如果您希望将其放在一行中,则类似以下内容:
q = Model.query(ndb.AND(*(Model.entity == item for item in list_1)))
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句