Я попытался запустить этот запрос в моей nodeJs приложениеВыполнение запросов встроенных документов в MongoDB
Book.find({'user._id': '545e2915cd91299447fdb8d7'}).populate('user').exec(function(err, books){...}
и он не работает (она возвращает пустой список), но я попытался запустить этот запрос в ЦМД с помощью Монго и он работал. Кто-нибудь может мне помочь, пожалуйста!
здесь схема книги:
var mongoose = require('mongoose'),
Schema = mongoose.Schema,
path = require('path');
/**
* Book Schema
*/
var BookSchema = new Schema({
title: {
type: String,
trim: true,
required: 'Title is missing'
},
created: {
type: Date,
default: Date.now
},
user: {
type: Schema.ObjectId,
ref: 'User'
}
});
mongoose.model('Book', BookSchema);
'user._id' должен быть ObjectId, а не строкой, как в вашем запросе. Вероятно, это источник проблемы. – wdberkeley
Да, при создании я должен использовать ObjectId («507f1f77bcf86cd799439011») вместо строки - «507f1f77bcf86cd799439011» – mark