Nếu bạn muốn sử dụng tính năng điền Mongoose, bạn nên thực hiện:
var userSchema = mongoose.Schema({
email: { type: String, required: true, unique: true},
password: { type: String, required: true},
name: {
first: { type: String, required: true, trim: true},
last: { type: String, required: true, trim: true}
},
phone: Number,
lists: [listSchema],
friends: [{ type : ObjectId, ref: 'User' }],
accessToken: { type: String } // Used for Remember Me
});
exports.User = mongoose.model('User', userSchema);
Bằng cách này, bạn có thể thực hiện truy vấn này:
var User = schemas.User;
User
.find()
.populate('friends')
.exec(...)
Bạn sẽ thấy rằng mỗi Người dùng sẽ có một loạt Người dùng (bạn bè của người dùng này).
Và cách chèn đúng như Gabor đã nói:
user.friends.push(newFriend._id);