Я новичок в Mongoose и MongoDB. поэтому выясним, возможно ли это:
let PlanSchema = mongoose.Schema({
planName: {type: String},
price:{type: Number},
description:{type: String},
itemscount :{type: Number},
countryid:{type: mongoose.Schema.Types.ObjectId, ref: 'tblCountry'},
createdDate: {type: Date,default: Date.now},
modifiedDate: {type: Date}
});
let CountrySchema = mongoose.Schema({
countryName: {type: String},
countryCode: {type: String},
callingCode: {type: String},
currencyCode: {type: String},
currencyName: {type: String},
currencySymbol: {type :String},
timeZone: {type: String},
language: {type: String},
createdDate: {type: Date,default: Date.now}
});
здесь прилагается таблица данных списка планов
Данные поступают из PlanSchema. когда я ищу название плана, цену или описание, фильтр данных по поиску, но я ищу по стране, фильтр не работает.
Вот запрос
let queryCond = {};
if (req.body.search.value !== '') {
queryCond = {
$or: [
{'planName': new RegExp(req.body.search.value, 'i')},
{'description': new RegExp(req.body.search.value, 'i')},
{'countryid.countryName': new RegExp(req.body.search.value, 'i')}
]
};
}
plan.find(queryCond, []).populate('countryid', 'countryName currencyName currencySymbol').exec(function (err, plandata) {
})