Typeorm: дизайн таблицы самореферентных отношений - PullRequest
0 голосов
/ 29 января 2020
  1. У пользователя есть 0 .. * совпадающих пользователей с помощью сущности Match
  2. Match имеет 0 .. * messages

Итак, я создал эту сущность, но у меня возникли некоторые трудности с создать / запросить данные. Итак, как спроектировать хорошую базу данных с информацией ниже?

Пользовательская сущность

  @Field()
  @Column()
  name: string;

  @Field()
  @Column()
  email: string;

Соответствующая сущность

  @Field(()=> Int, {nullable: true})
  @Column()
  userId: number;

  @Field(()=> Int, {nullable: true})
  @Column()
  matchedUserId: number;


  @Field(() => [Message], {nullable: true})
  @OneToMany(() => Message, message => message.match)
  messages: Message[]
...