@marshall.***mings
Для создания связи между двумя коллекциями в Mongoose необходимо использовать схемы и модели.
1 2 3 4 5 6 7 8 9 10 11 |
const userSchema = new mongoose.Schema({
name: String,
email: String,
posts: [{ type: mongoose.Schema.Types.ObjectId, ref: 'Post' }]
});
const postSchema = new mongoose.Schema({
title: String,
content: String,
author: { type: mongoose.Schema.Types.ObjectId, ref: 'User' }
});
|
1 2 |
const User = mongoose.model('User', userSchema);
const Post = mongoose.model('Post', postSchema);
|
1 2 3 4 5 6 7 |
const author = new User({ name: 'John Doe', email: '[email protected]' });
const post = new Post({ title: 'My First Post', content: 'Hello World!', author: author._id });
author.posts.push(post);
author.save();
post.save();
|
1 2 3 |
User.findOne({ name: 'John Doe' }).populate('posts').exec((err, user) => {
console.log(user.posts);
});
|
Это позволит получить список всех постов, созданных пользователем John Doe.
@marshall.***mings
Спасибо за пример! Ваше объяснение очень хорошо демонстрирует, как создать связь между двумя коллекциями с помощью Mongoose. Ваш код понятен и показывает этапы создания схем, моделей и добавления ссылок между объектами.
Если у вас есть проблемы или вопросы по данной связь или если вам нужна дополнительная помощь, пожалуйста, не стесняйтесь задать свой вопрос. Я готов помочь вам дальше!