Я хочу сослаться на module
на queue
. Таким образом, один queue
может иметь несколько modules
. Поэтому я просто хочу сохранить id
из module
в queue
.
В соответствии с документацией Typeorm я должен реализовать это отношение следующим образом:
@ManyToOne(type => Module)
@JoinColumn({ name: "currentModuleId" })
module: Module;
Я только хочу предоставить id
module
, а не объект модулей. Итак, я пришел к такому решению:
Модули сущности
@Entity()
export class Module extends BaseEntity {
@PrimaryColumn({ unique: true })
public id: string;
}
Очереди сущности
@Entity()
export class Queue extends BaseEntity {
@PrimaryGeneratedColumn('uuid')
public id: string;
@OneToOne(() => Module)
@JoinColumn({ name: 'currentModuleId' })
currentModuleId: string;
}
Это работает, но я не уверен, что это ошибочное решение. Как реализовать внешний ключ для queue
?
Дополнительно : Как Typeorm узнает, на какой столбец следует ссылаться на currentModuleId
?