【发布时间】:2015-06-08 00:49:19
【问题描述】:
我有两个使用 Mongoose 的架构
架构 1
var schema = mongoose.Schema({
name: {
type: String,
required: true
}
});
return mongoose.model('User', schema);
架构 2
var schema = mongoose.Schema({
name: {
type: String,
required: true
},
user: {
type: mongoose.Schema.ObjectId,
ref: 'User',
required: true
}
});
return mongoose.model('Page', schema);
我在页面集合中的数据
_id
551b0cdf63dc96e9c39de0f8
551b0d1563dc96e9c39de0f9
551b0d2d63dc96e9c39de0fa
551b0d4363dc96e9c39de0fb
551daae0f4cb312c62dcbc1e
名称
卡萨基斯托
俄罗斯
中国
澳大利亚
萨尔瓦多
用户
5515c7aaaf6d59fea26d7185
5515c7aaaf6d59fea26d7185
5515c7aaaf6d59fea26d7185
5515c7aaaf6d59fea26d7185
5515c7c9af6d59fea26d7186
当我按用户在模式 2 中搜索时,我没有找到任何结果。
mongoose 翻译 mongoose 错误地转换查询。
查询
var test = Page.find().select("_id").where({"user" : "5515c7aaaf6d59fea26d7185"}).exec()
.then(function (t) {
console.log("hi", t);
});
查询翻译错误
db.pages.find({ user: ObjectId("5515c7aaaf6d59fea26d7185") })
没有结果
应有的查询
db.pages.find({ user: "5515c7aaaf6d59fea26d7185" })=
4 个结果
关于如何解决此问题的任何建议?
【问题讨论】:
标签: node.js mongodb express mongoose objectid