2012-09-28 13 views
12

user.signup_date = null öğesini ayarladığım bir kullanıcı üzerinde user.save() öğesini arıyorum;mongoose kullanarak mongo nesnesi için alanı boş olarak ayarla

user.first_name = null; 
user.signup_date = null; 

user.save(); 

Ama etkili bir şekilde boş veya null bu alanı kurarım nasıl hala signup_date sahiptir ve set FIRST_NAME'in MongoDB kullanıcı ... baktığınızda?

user.set('first_name', null); 
user.set('signup_date', null); 
user.save(); 

Ya da belki bunu yaparsanız ne olur kaydedilirken bir hata, var:

user.save(function (err) { 
    if (err) console.log(err); 
}); 

bunu mu

cevap

31

doc kaydetmeden önce undefined yerine null bunları ayarlamak, mevcut dokümandan bu özellikleri kaldırmak için);
+0

çalışır, bu – chovy

+0

nesnesinden silmek için çalıştı Çok güzel yanıt benim zamanım çok tasarruf :) –

+0

Dosyalanmış bir Array bir wake değil ise :( –

1

böyle yerine set yöntemi deneyin eğer bir fark mı Günlüğe bir şey yazdırmak?

user.first_name = undefined; 
user.signup_date = undefined; 

user.save(); 
+1

user.set ('FIRST_NAME', silin: – chovy

1

Hemen alanları tanımsız

delete user.first_name; 
delete user.signup_date; 
user.save(); 
+4

bu işe yaramadı, nesne değişmeden kaldı db. – chovy

+2

Bunu yaptıktan sonra deneyebilirsiniz: 'user = user.toObject()' first. – k00k