У меня есть два Mongoose Schemas:Поиск Mongoose поддокумент временем обновленный
var ItemSchema = new Schema({
trade: {
type: Schema.Types.ObjectId,
ref: 'Trade'
}
});
var Item = mongoose.model('Item', ItemSchema);
и
var TradeSchema = new Schema({
expiresOn: {
type: Date
}
});
var Trade = mongoose.model('Trade', TradeSchema);
Я пытаюсь использовать Item.find(), чтобы найти элемент, если его дата заключения сделки меньше чем дата, через которую пользователь проходит через строку запроса в запросе. Я использую следующий код:
if (req.query.expiresBefore) {
Item.find({
'trade.expiresOn': {
$lte: req.query.expiresBefore
}
}, function (err, trades) {
console.log(trades)
})
}
Однако, я получаю пустой массив на вызове console.log(). Использование $ gte также возвращает пустой массив (хотя мое исследование говорит мне, что мне нужно использовать $ lte для моих целей). Что мне нужно сделать, чтобы найти документ элемента, сопоставляя свойство (expiresOn) его дочернего элемента (Trade)?
Это помогло, спасибо! –