【发布时间】:2015-09-07 08:54:26
【问题描述】:
我想在 mongoose 中创建一个查询来实现这个功能:
猫鼬模型:
Planted_crop: owner: id, date_planted: Date, crop: id, quantity: Number
Crop: name: String, water_consumption: Number, grow_time: Number (means hours)
现在我想获取所有尚未完全种植的作物,在半代码中就是这样:
if (plantedCrop.date_planted < plantedCrop.date_planted + plantedCrop.crop.grow_time) {
// this crop should be selected
}
现在我需要把它翻译成 mongodb:
var PlantedCrop = mongoose.model("planted_crop");
PlantedCrop.find({
date_planted: {
$lt: {
date_planted + crop.grow_time * 3600
}
}
}).populate("crop").exec(function(err, crops) {
// calculate water consumption
var consumption = 0, planted;
for (var i = 0; i < crops.length; i++) {
planted = crops[i];
consumption += planted.crop.water_consumption * planted.quantity;
}
console.log("Water consumption of planted crops is " + consumption + " liters.
});
我一直在创建这样的查询,有人可以帮助我吗?
【问题讨论】:
标签: node.js mongodb mongoose mongodb-query