Преобразование вложенных объектов в формат, совместимый с Mongoose - PullRequest
0 голосов
/ 31 октября 2018

Я пытаюсь использовать Redis для кэширования данных для моего приложения. Я храню данные в Redis, как:

const result = await exec.apply(this,arguments);
client.set(key,JSON.stringify(result));

и затем использование кэшированных данных для приложения, например:

const cachedValue = await client.get(key);
if(cachedValue){

   const doc = JSON.parse(cachedValue);
   return Array.isArray(doc) ? doc.map(d => new this.model(d)) : new this.model(doc)
}

Превращение кэшированных данных в модель документа mongoose с помощью new this.model. Он работает нормально для одного объекта и массива объектов, но не работает для вложенных объектов, таких как

{
        "attendance": {
            "classesHeld": 0,
            "classesTaken": 0,
            "classesLeft": 0,
            "date": {
                "$date": "2018-10-30T14:37:21.596Z"
            }
        },
        "GPA": 0,
        "date": {
            "$date": "2018-10-30T14:37:21.596Z"
        },
        "_id": {
            "$oid": "5bd86ca19ffc0feb81434ac3"
        },
        "name": "OOC & Programming",
        "code": "SE-201",
        "ch": 4,
        "teacher": "ada",
        "semester": "Second"
}

Что может быть возможным решением этой проблемы? Заранее спасибо

...