Задать вопрос
Grapeoff
@Grapeoff
В чём концепция...?

Почему не работает популяция Typegoose?

У меня есть две модели:
class Pupil {
    @Prop({ type: String, required: true, unique: false })
    public name!: string

    @Prop({ type: String, required: true, unique: false })
    public surname!: string

    @Prop({ type: String, required: true, unique: false })
    public midname!: string

    @Prop({ type: String, required: true, unique: false })
    public age!: string

    @Prop({ type: String, required: true, unique: false })
    public gender!: string

    @Prop({ type: String, required: true, unique: false })
    public phone!: string

    @Prop({ type: String, required: false, unique: false })
    public parentPhone!: string

    @Prop({ type: String, required: true, unique: false })
    public discord!: string
}


class Group {
    @Prop({ type: String, required: true, unique: true })
    public GROUP_NAME!: string

    @Prop({ type: Number, required: true, unique: false })
    public LEVEL!: number

    @Prop({ type: String, required: true, unique: false })
    public TUTOR!: string

    @Prop({ type: Number, required: true, unique: false })
    public PLACES!: number

    @Prop({
        type: Schema.Types.Array,
        ref: 'Pupil',
        unique: false,
        default: []
    })
    public PUPILS!: Ref<Pupil>[]
}


- Ученик и группа

Група создаётся вот таким запросом:
{
	"GROUP_NAME": "Имя Группы",
	"TUTOR": "Преподаватель",
	"LEVEL": 4,
	"PLACES": 3,
	"PUPILS": ["60b8bd8ea379d8001f1e7700", "60b8c143a379d8001f1e7701"]
}


В поле pupils хранится массив _id учеников из коллекции Pupils.
Я хочу делать популяцию этих айдишников, когда у меня с сервера запрашивают группу/группы.

Я делаю это так:
await Group.find().populate('PUPILS', 'Pupil')

И это возвращает мне такой объект:
{
  "PUPILS": [],
  "_id": "60b9755dee93c303b35d0afb",
  "GROUP_NAME": "Имя Группы",
  "TUTOR": "Преподаватель",
  "LEVEL": 4,
  "PLACES": 3,
  "__v": 0
}


Я ожидал, что мне прийдёт массив, где будут 2 объекта ученика из коллекции Pupils, а пришёл пустой массив

Я перечитал все документации, обошёл весь StackOverflow, но ничего не нашёл... А если и находил, то там всё было либо так же, либо на JS без Typegoose.
  • Вопрос задан
  • 36 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 1
Grapeoff
@Grapeoff Автор вопроса
В чём концепция...?
Решилось само собой, я даже не понял, что изменилось в моём коде
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы