我有一个猫鼬人口的问题,我不知道该怎么做。
我有两个模式:
var userSchema = new userSchema({
username: { type: String, required: true, unique: true },
password: { type: String, required: true },
mods: [{ type: mongoose.Schema.Types.ObjectId, ref: 'users'}]
});
var dataSchema = mongoose.Schema({
title: { type: String, required: true, unique: true },
description: { type: String, required: true },
owner: {type: mongoose.Schema.Types.ObjectId, required: true}
});
因此一个用户可以拥有多个数据包。 某些用户由其他用户审核。
对主持人的查询是什么,列出了他所有自己的数据包和他正在审核的用户?
您看到我有一个SQL背景,并且肯定有另一种方法可以使用MongoDB。
感谢您的帮助!
答案 0 :(得分:0)
我不清楚您需要什么样的查询,但首先您需要在'所有者'中设置ref属性。 dataSchema中的字段。关于人口,它看起来像这样:
//if you use callback
users.find({/*your query*/}).populate('mods')
.exec((err, result)=>{/*your code*/});
//if you use promise
users.find({/*your query*/}).populate('mods').exec()
.then(result=>{/*your code*/})
.catch(err=>{throw err});