我正在使用 Google App Engine NDB,并尝试执行以下查询:
query = Club.query(ndb.OR(
ndb.AND(Club.memberIds == userId, Club.modifiedDate > date),
ndb.AND(Club.activityDate > date, ancestor = userKey)
))
但是,我得到一个运行时错误:
TypeError: __new__() got an unexpected keyword argument 'ancestor'
这与祖先的地位有关。该答案能够在一种情况下指出解决方案,但该解决方案不适用于此处,因为祖先位于实际的 AND 子句中。
- 如何重新格式化此查询以使其正常工作?
- 这个查询是个坏主意吗?是不是太复杂了?由于它的复杂性,它会花费我比平时更多的阅读费用吗?