このクエリを実行しました:
restaurantTable = RestaurantTable.all().filter('restaurant', restaurantKey)
.filter('prepaymentPerReservable', None)
.get()
すべての RestaurantTable には prepaymentPerReservable (新しく db.Model に追加された) がないため、結果は得られません。
同じデータに対して次のクエリも実行しました。
restaurantTables = RestaurantTable.all().filter('restaurant', restaurantKey)
hasField = [x.key().id() for x in restaurantTables if x.prepaymentPerReservable == None]
4 つの結果が得られ (4 つのエンティティには prepaymentPerReservable がありません)、x.prepaymentPerReservable == None は有効です。
問題は、x.prepaymentPerReservable == None が両方の場合に常に true である場合、エンティティにフィールドがないか、フィールドに None 値があることをどのように検出するかです。