1

我有一個布爾屬性在我的模型之一由BooleanProperty對象過濾谷歌應用程序使用NDB引擎

class MyObject(ndb.Model) 
    availability = ndb.BooleanProperty() 

當我運行一個查詢,它搜索其availability設置爲True的所有對象。我看到下面的錯誤

TypeError: Cannot filter a non-Node argument; received BooleanProperty('availability')

這是我創造我query

query = cls.query() 
    query.filter(cls.availability) 

如何查詢all the objects whose booleanproperty is set to true

+1

不宜過濾器是'query.filter(cls.availability ==真)'? –

+0

是的,它固定它。出於某種原因,我認爲== True是多餘的。我猜在這種情況下,這是必要的。 – user462455

回答

2

查詢過濾器還必須包括過濾操作的屬性和操作的值(沒有一個默認值):

query.filter(cls.availability == True) 

Filtering by Property Values

NDB支持這些操作:

property == value 
property < value 
property <= value 
property > value 
property >= value 
property != value 
property.IN([value1, value2])