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 句にあるため、その解決策はここでは適用されません。
- このクエリを再フォーマットして機能させるにはどうすればよいですか?
- このクエリは悪い考えですか? 複雑すぎませんか?その複雑さのために、通常よりも追加の読み取りコストがかかりますか?