Cevabı çok iyi araştırdım ama eminim peşindeyim anlatmak için doğru kelimeleri kaybettim.
Temelde 'insanlar' adında bir mongodb koleksiyonum var. Bu koleksiyonun şeması aşağıdaki gibidir:
people: {
name: String,
friends: [{firstName: String, lastName: String}]
}
Şimdi, veritabanına bağlanan ve başarıyla boş bir arkadaş dizisi ile 'insanlar' yaratan çok temel bir ekspres uygulama var.
Başvuruda ikincil bir yerde, arkadaş eklemek için bir form mevcuttur. Form, firstName, lastName ve ardından ad alanı içeren POST öğelerini de uygun people nesnesine başvurmak için alır.
Yapmakta zorlandığım şey yeni bir arkadaş nesnesi oluşturmak ve daha sonra bunu arkadaşlar dizisine "itmek".
Bunu mongo konsolu üzerinden yaptığımda arama kriterlerinden sonra ikinci argümanım olarak $ push ile güncelleme işlevini kullandığımı biliyorum, ancak bunu yapmak için mongoose almanın uygun yolunu bulamıyorum.
db.people.update({name: "John"}, {$push: {friends: {firstName: "Harry", lastName: "Potter"}}});
GÜNCELLEME: Yani, Adrian'ın cevabı çok yardımcı oldu. Amacımı gerçekleştirmek için yaptığım şey şu.
app.js dosyamda şunu kullanarak geçici bir rota belirledim:
app.get('/addfriend', users.addFriend);
users.js dosyamda nerede var
exports.addFriend = function (req, res, next)
{
var friend = {"firstName": req.body.fName, "lastName": req.body.lName};
Users.findOneAndUpdate({name: req.user.name}, {$push: {friends: friend}});
};