TypeError: Mongoose maps only support string keys, got undefined
Почему-то получаю такую ошибку при любом раскладе, хотя нигде никакой ошибки нет, а самое смешное, что точно такой-же код работает в моём Express проекте.
У меня есть модель ученика, там много полей, но нас интересует лишь одно:
export default class Pupil extends TimeStamps {
@prop({ type: () => Map, required: false, default: new Map() })
localSchedule: Map<string, Schedule[]>;
}
Есть функция, которая прикрепляет расписание группы к ученикам этой группы
private inheritGroupSchedule(
pupils: DocumentType<Pupil>[],
group: DocumentType<Group>,
schedule: Schedule[]
) {
pupils.forEach(async pupil => {
pupil.localSchedule.set(group.id, schedule);
await pupil.save();
});
}
И именно этот блок кода
pupil.localSchedule.set(group.id, schedule);
по каким-то причинам вызывает ошибку
TypeError: Mongoose maps only support string keys, got undefined
Даже если допустить, что
group.id === undefined
, то тогда может, если я захардкожу туда какую-то строку, то всё починится? - Нет.
Вот скриншот всего этого неотлаживаемого ужаса: