mongoose多表查询

mongoose多表查询

用户表和帖子表为例

帖子表:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const BlogPost = new Schema({
us:String,
theme:String,  
desc:String,  
usID:{             //保存user中的id
	type: mongoose.Schema.ObjectId,
	ref:"user"     //与下面user表声明一致           
}
});
BlogPost.statics = {
	findusimgByCardUs:function(cardUs, callback){    //
		return this
			.findOne({_id:cardUs}).populate('usID')  //usID要与前面一致
			.exec(callback)
	}
}
//上面是声明的模型,
module.exports=mongoose.model('card',BlogPost);

用户:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const user = new Schema({
us:String,
phone:String,
ps:String,
photo:String,
});
//上面是声明的模型,
module.exports=mongoose.model('user',user);

查询:

let user=require("./user-data.js");//user表
let card=require("./card-data.js");//帖子表
card.findusimgByCardUs(res1[i].themeid, function (err, card){
	if(err) console.log(err);
	console.log(card);
})

在这里插入图片描述


相关文章:https://cnodejs.org/topic/542be3a6b2e01eed2f4de097

猜你喜欢

转载自blog.csdn.net/qq_33327325/article/details/82803095