我有以下代码:
employees = Employee.query()
employees = employees.filter(query.OR(Employee.passport_id == passport_id,
Employee.inn == inn))
employees.order(-Employee.added)
results = employees.fetch(5)
但我收到错误:
NameError: global name 'query' is not defined
顺便说一下,passport_id is None
和Employee.passport_id is None
如何运作。它会找到这样的匹配吗?
UPD。通过添加
修复了第一个问题from google.appengine.ext.ndb import query
第二个问题仍然存在..
答案 0 :(得分:1)
你应该使用ndb.OR,所以你不需要导入查询子模块(你永远不必导入它)。
如果passport_id是已定义的属性,是的,查询Employee.passport_id ==无效。 (务必使用'=='运算符,而不是'是'。)