2016-03-18 27 views
1

SailsJs'te, bir mongodb veri tabanına sahip su hattını kullanarak bir projem var. Tanımlı alanlar olmayan, tanımlanmış bazı alanlar var. Bu alanın tanımlanmadığı yerlerde kayıtları aramam gerekiyor. Örneğin: 0 Soyadının nerede tanımlanmadığını aramak istiyorum. Bunun nasıl yapılacağı konusunda bir ipucu var mı?Sailsjs, alanın ayarlanmadığını nerede buldu?

denedim

{surname: null} 
{surname: ''} 

Hiçbir şey istenen sonucu verir. Yanlış:

+0

gibi görünecektir {tanımsız soyadını} hile yapmak. Herkes bunu teyit edebilir mi? – yBrodsky

+0

bulmak (soyadı: ''), soyadı boş, bulun (soyadı: null) ve bulmak (soyadı: undefined) hangi soyadı null için size verecektir verecektir. Bu benim için çalışır! Eğer hala bu soruna sahipseniz, o zaman plz modelinizi ve kontrol cihazınızın kodunu ekleyin! – vkstack

+0

soyadı: undefined, "soyadı" alanının ayarlanmadığı yerleri getiriyor. Boş veya "", alanın boş olduğu yerdeki kayıtları getirir – yBrodsky

cevap

1

için bu bağlantıyı kontrol edin Model.find({where: {surname: null } }) olduğunu düşünüyorum. Su hattı tarafından şu anda desteklenmemektedir. Kullanmak için Model.native() kullanabilirsiniz. görünüyor

Waterline native()

O MongoDB koleksiyonunu döndürür ve orada yerli MongoDB işlemlerini kullanabilirsiniz::

MongoDB $exists

Komple kod daha bu

Model.native(function(err, collection) {  
    if (err) throw err; 
    collection.find({ 
     surname: { $exists: false} 
    }).toArray(yourCallback); 
});