javascript - 如何在猫鼬中的 populate() 之后使用 .where().equal()?
问题描述
那是我的两个模型:
var OfferSchema = mongoose.Schema({
title: {
type : String
},
commerce: {
type : mongoose.Schema.Types.ObjectId,
ref : 'Commerce'
}
});
一个 offer 包含一个 commerce :
var CommerceSchema = mongoose.Schema({
name: {
type: String
}
});
然后我只想获取所有具有名为“Haircut”的商业的报价,所以我要求:
module.exports.getOffresByName = function(req,callback){
var name= req;
Offre.find()
.populate('commerce')
.where('commerce.name').equals('Haircut')
.exec(callback);
}
我没有从中得到任何东西..(而且我知道我有一个名为“理发”的商业报价,所以问题出在我的要求上)
你能帮我吗 ?:D
解决方案
最后我成功了,我采取了另一种方式!
module.exports.getOffresByName = function(req,callback){
var name= req;
var result = [];
Offre.find()
.populate('commerce')
.exec(function(err, offer){
if(err) return err;
var cmp= 0;
for(var i= 0; i<offer.length; i++){
if( offer[i].commerce.name== name){
result[cmp]= offer[i];
cmp++;
}
}
callback(err, result);
});
推荐阅读
- wordpress - Elementor 单击链接 URL 时关闭 Popupmaker
- javascript - 拖放:dragLeave 在动态添加的元素上触发
- javascript - 用html标签封装元素
- angular - 如何使用纱线离线标志使用 ng 命令创建新的 Angular 应用程序?
- r - R错误:优化导致“未使用的参数(x)”
- java - 我的解决方法出错并且不打印真假
- dolphindb - 一个关于计算共享内存表中数据的问题
- android - 如何确保在需要之前初始化 lateinit 变量?
- python - 如何在 Flask 中导入 settings.py 文件?
- robotframework - 如何检查数据是否显示在 html 表格中,否则如果数据未显示在表格中,则使用机器人框架将失败