Có vẻ hợp lý với tôi để thực hiện điều gì đó như sau:Mẫu thích hợp cho các lược đồ lồng nhau trong Mongoose/MongoDB là gì?
var AvatarSchema = new Mongoose.Schema({
type: String,
url: String
});
var UserSchema = new Mongoose.Schema({
avatars: [AvatarSchema],
email: String,
name: String,
salt: String,
token: String
});
var ThinUserSchema = new Mongoose.Schema({
avatars: [AvatarSchema],
email: String,
firstname: String,
lastname: String,
});
var QuestionSchema = new Mongoose.Schema({
question: String,
users: [ThinUserSchema]
});
Sau đó bật lại. . .do một cái gì đó như sau:
var question = new Question({
question: 'Wut?',
users: users //where users is an array of instances of a user model of the UserSchema
});
Ở đây tôi hy vọng phần người dùng của câu hỏi sẽ được phổ biến với hình đại diện, email, họ và họ. . Tuy nhiên, kể từ khi người dùng/avatar đã có _id, đây không phải là vẫn tồn tại.
- Xóa từng dấu _id khỏi người dùng/hình đại diện có vẻ ngớ ngẩn.
- Thiết lập rõ ràng từng người dùng/hình đại diện có vẻ không hiệu quả.
- Chuyển sang loại hỗn hợp, đặt mọi thứ trong đó và yêu cầu markModified.
Mẫu thích hợp cho các loại lược đồ này là gì?
Cảm ơn!
Dân cư nhấn cơ sở dữ liệu với truy vấn bổ sung và không cho phép lựa chọn trường không đầy đủ từ bộ sưu tập khác. Tôi nghĩ [subdocs] (http://mongoosejs.com/docs/subdocs.html) phù hợp hơn ở đây. – mtsr