Ben kullanıcılar için bu küçük şema vardır:Gelincik silmek alt belge dizi öğesi
{
username: String,
contacts: Array
}
Yani bu gibi görünecektir bazı kullanıcının kontakları örneğin:
{
username: "user",
contacts: [{'id': ObjectId('525.....etc'), 'approved': false}, {'id':ObjectId('534.....etc'), 'approved': true}]
}
Şimdi bir öğeyi silmek gerek kişilerden yüzden yapın:
model.findByIdAndUpdate(23, {'$pull': {
'contacts':{'id':'525.....etc'}
}});
ama çalışmıyor görünüyor, n o hataları ama silinir gelmez , sadece kullanıcı için bu belgeyi dönmek istiyorum:
{
username: "user",
contacts: [{'id':ObjectId('534.....etc'), 'approved': false}]
}
nasıl bunu başarmak için?
hi teşekkürler ama şimdi ben bu hata var: ** [MongoError: istisna: [{id:: Nesne ('543394bb964ac60915ceba8b' elemanını ({kişiler travers parçayı (contacts.id kontaklarını) kullanamazsınız), onaylandı: false}, {id: ObjectId ('543399f9964ac60915ceba8c'), onaylandı: false}]}) ** bu ne olabilir? ben senin nokta açıklamalarını kullandım - – sbaaaang
@sbaaaang Aslında ne yapıyorsun? Size söylendiği gibi "nokta notasyonu" formunu kullanıyor musunuz? BTW Gerçek verilerinizin, muhtemelen burada yine sorunun bir parçası olan, yayınladığınızdan farklı olduğunu açıkça gösterdiğiniz için teşekkür ederiz. Gerçek veri yapınızı göstermek için lütfen düzenleyin. –
evet kullanarak * nokta notasyonu * dediğin gibi evet, ObjectIds kullanarak im ama sanırım sorun değil: P nope? (düzenlenmiş soru) – sbaaaang