Я знаю, что этот вопрос был поднят много раз до этого, и что Mongo не имеет точного соединения «имеет много», но пока не удалось установить связи между двумя схемами. Вот что у меня есть:У Mongoose есть много отношений между Schemas
пользователь модель (user.js)
var userSchema = mongoose.Schema({
posts: {
_id : { type: Schema.Types.ObjectId, ref: 'Post' },
title : {type: String, ref: 'Post'}
},
facebook : {
id : String,
token : String,
email : String,
name : String
}
});
и сообщения схема (post.js)
var meetingsSchema = mongoose.Schema({
title: String,
description: String,
_owner: { type: Schema.Types.ObjectId, ref: 'User' },
ownerName: { type: String, ref: 'User' },
created_at: { type: Date, default: Date.now },
});
Я использую население схемы и отлично работает с постом: каждый из них имеет владельца. Однако это не так хорошо работает с пользователями. Я хочу получить список пользователей, показывая сообщения, которые принадлежат им. В routes.js я определил вызов апи к базе данных
app.get('/api/users', function(req, res) {
User.find(function(err, users) {
if (err)
res.send(err)
res.json(users);
}).populate('posts._id', 'posts.title');
});
Но, как в скорлупе и (не удивительно) на стороне клиента user.posts возвращает пустой массив. Как я могу привязать эти две модели правильно?