Код в моделях:
const fooSchema = mongoose.Schema({
name: String,
type: String,
quantity: Number,
});
const barSchema = mongoose.Schema({
name:String,
color:String,
foo: fooSchema
});
Пожалуйста, смотрите в коде маршруты
const foo = await Foo.findById(bar.foo._id);
let bar = new Bar({
name: req.body.name,
color: req.body.color,
foo:
{
_id: foo._id,
name: foo._name
}
});
при сохранении с помощью почтальона
{
name: "Bar name",
color: "Blue" ,
foo:
{
_id: "5e95eee1d3cfe05bc48e0d8f"
}
}
его было сохраненный в mongodb как
{
name: "Bar name",
color: "Blue" ,
foo:
{
_id: "5e95eee1d3cfe05bc48e0d8f",
name: "Foo name",
type: "Foo type",
quantity: 1500
}
}
Я не знаю, где я делаю ошибку, я указываю только те поля из вложенного документа, которые мне нужно сохранить здесь, мне нужно только сохранить имя с _id, но сохранить все полей из коллекций foo. Обратите внимание, что я использую версию mon goose как "mon goose": "^ 5.9.9"