Возьмите две сущности, определенные в http://typeorm.io/#/one-to-one-relations
В User определяется однозначное отношение, в результате чего в таблице User создается столбец внешнего ключа «profileId». Все идет нормально.
Но у моей сущности «Пользователь» уже есть столбец «idProfile», и я хотел бы, чтобы это был внешний ключ, на котором построено отношение. Как я могу сказать TypeORM использовать этот столбец вместо создания нового?





Вы можете передать имя столбца в @JoinColumn():
@Entity()
class User {
@OneToOne(type => Profile)
@JoinColumn({ name: 'idProfile' })
profile: Profile
}
@Entity()
class Profile {
@PrimaryGeneratedColumn()
id: number
}
Но как вы можете добавить это значение в базу данных? Когда я пытаюсь добавить запись с помощью FK (например, ваш idProfile), я получаю сообщение об ошибке. Тип 'number' не имеет общих свойств с типом 'DeepPartial <Promise <Issue>>'
Работает как шарм. Спасибо!