const EmbeddedInformationSchema = Schema({
description: String
});
const UserSchema = Schema({
informations: [EmbeddedInformationSchema]
})
const EmbeddedInformation = mongoose.model('EmbeddedInformation', EmbeddedInformationSchema);
const User = mongoose.model('User', UserSchema);
const run = async ()=>{
await mongoose.connect('mongodb://localhost/test');
await mongoose.connection.db.dropDatabase();
await EmbeddedInformation.create({description: 'a'});
await EmbeddedInformation.create({description: 'b'});
let informationAll = await EmbeddedInformation.find();
let user = await User.create({informations: informationAll.map(item=>item._id)});
console.log(user);
}
run().catch(console.error)
Как автоматизировать встраивание документа таким образом, чтобы в консоли вывело следующее?
{informations: [{description: 'a'}, {description: 'b'}]}
И самое главное, мне нужно подменять документы только тогда, когда EmbeddedInformation сохраняется именно в User.
Кроме того, я знаю какэто сделать с помощью логики в хуках, но возможно есть способуказать именно на уровнетемы или при вызове методов (save, create..)?