2014-03-31 63 views
5

我有一個不需要每個財產的模型。我想查詢模型並返回定義屬性的所有實例。如果已定義財產,則從模型中獲取結果

這是我的認爲的代碼應該看起來像,但它不起作用。任何想法或鏈接到一些詳細的文檔?

MyModel.find() 
.where({ 
    "propertyThatMayExist" : { 
     "!=" : undefined 
    } 
}); 

非常感謝!

回答

8

最簡單的方法是測試null。正確的操作是!not

MyModel.find().where({propertyThatMayExist: {'!': null}}).exec(console.log); 

這是假設你不想有時明確設置屬性null一個實例,這將是對一些數據庫問題的呢(想的MySQL,默認最如果它們沒有被填寫,則爲NULL)。

+0

MyModel.find()。where({'id':{'!':5}})。exec(console.log); 這可以工作,但是查詢null會返回一個空集。我試着用id和datetime類型屬性。 –

+0

您使用的是哪種數據庫適配器?它真的是'ID',可能是空的,或者你只是用它作爲例子嗎?根據您的設置,「id」可能永遠不會爲空。 – sgress454

+0

目前使用磁盤,將會在mysql上結束。身份證只是一個例子。 –