Типизированные отношения Typeorm вместо строк

#typeorm

#typeorm

Вопрос:

Загружаемое отношение задается следующим образом:

 someRepo.findOne({relations: ["someRelation"]});
  

Естественно, строка нетипизирована и может вызвать проблемы позже.

Возможно ли каким-то образом указать отношения таким образом, чтобы обеспечить применение типов?

Комментарии:

1. Возможно, конструктор запросов поможет вам: someRepo.createQueryBuilder('some_alias').leftJoin(AnotherEntity, 'another_alias').getOne()

Ответ №1:

Я остановился на статическом поле, в котором перечислены все отношения, а также обеспечивает довольно большую безопасность.


 @Entity
class Post {
 static relations = {
   someField: "someField
 }

 @OneToOne...
 someField!: PostMetadata;
 /* ... */
}