Уважаемые,
У меня проблемы с возвратом агрегации mongoDB с использованием mongoose.
Запрос в MongoDB отправляет обратно данные, но вызов mongoose всегда возвращает пустой массив
ОБНОВЛЕНИЕ Я нашел исправление, мне нужно добавить третий параметр при настройке модели
const RawData = mongoose.model('rawdata', rawDataSchema, 'rawdata');
Вот код
Схема rawdata.js
import mongoose from 'mongoose';
const rawDataSchema = new mongoose.Schema({
Email: String,
Nb: Number,
Licences: String,
Licence_ret: String,
Pays: String,
Share: String,
Pack: String,
Quota_in_MB: Number,
Webmail_Ext: Number, });
const RawData = mongoose.model('rawdata', rawDataSchema);
export default RawData;
index.js - редактируется после первых отзывов
import express from 'express';
import mongoose from 'mongoose';
import RawData from 'rawdata'
const app = express();
app.get('/test', async (req, res) => {
const data = await RawData.aggregate(
[
{ "$group": { _id: { license: "$Licence_Carrefour" }, count: { $sum: 1 } } },
{
$project: {
_id: 0,
License: "$_id.license",
count: 1
}
}
]);
console.log('data', data)
res.send('hello')
});
(async () => {
await mongoose.connect(dbURI, { useNewUrlParser: true }, err => {
if (err) console.log('\x1b[31m%s', 'DB is not connected');
console.log('connected to database ');
});
app.listen(APP_PORT, () => console.log('app up'));
})();