Ошибка в моих Многих-многих отношениях в ТипеОРМ

#nestjs #typeorm

Вопрос:

Я уверен, что это, вероятно, просто ошибка, которую я не могу ясно разглядеть; возможно, из-за отсутствия понимания? Но я боролся с этим в течение 2 дней, не зная, что я делаю неправильно; поэтому я прошу о помощи!

Ниже приведены

  1. служба, вызывающая для вставки отношения Rhmember в Rhactivity
  2. Оба вовлеченных субъекта.
 // service.ts (snippet)
for (let j=0; j<activity[i].memberspresent.length; i  ) {
  await getConnection()
  .createQueryBuilder()
  .relation(RhactivityEntity, "memberspresent")
  .of(activity[i].id)
  .add(activity[i].memberspresent[j].id);
}

// rhactivity.entity.ts
@Entity('rhactivity')
export class RhactivityEntity {
  @Column() date: Date;
  @ManyToOne(() => RhEntity, rh => rh.activity) 
  rh: RhEntity;

  @ManyToMany(() => RhmemberEntity, memberspresent => memberspresent.activity)
  @JoinTable() memberspresent: RhmemberEntity[];
}

// rhmember.entity.ts

export class RhmemberEntity {
  @ManyToOne(() => RhEntity, rh => rh.members)
  rh: Rhentity;

  @ManyToMany(() => RhactivityEntity, activity => activity.memberspresent)
  activity: RhactivityEntity[];
}

 

И когда я отправляю запрос, я получаю ошибку:

"Cannot read property 'memberspresent' of undefined"

Я трижды проверил свой service.ts и абсолютно уверен, что activity[i].memberspresent[j].id это допустимая переменная, которая содержит правильные id .

Лично я чувствую, что, вероятно, что-то не так в том, как я устанавливаю отношения со многими людьми, но я не уверен…

Редактировать:

Интересно, нормально ли заводить такие отношения? Одна таблица соединена с двумя другими таблицами, а две другие таблицы связаны друг с другом отношением «Многие ко многим».

введите описание изображения здесь