Тип нормы: отношения один на один с двуличием

#node.js #express #typeorm

Вопрос:

У меня личные отношения с typeorm. В этом случае у меня изначально есть две таблицы «местоположение» и «единица измерения», в которых запись единицы измерения будет хранить идентификатор местоположения с помощью внешнего ключа. Поскольку соотношение 1:1, я хочу, чтобы у устройства был этот внешний ключ, и ни одно другое устройство больше не может его использовать, но этого не происходит, я могу зарегистрировать несколько устройств с одним и тем же первичным ключом местоположения. Ниже приведены сущности. Кто-нибудь знает, чего не хватает?

Кодовое местоположение

 @Entity('locales') class Locale {  @PrimaryGeneratedColumn('uuid')  id: string;   @Column()  name: string;   @Column()  latitude: string;   @Column()  longitude: string;   @CreateDateColumn()  created_at: Date;   @UpdateDateColumn()  updated_at: Date; }  

кодовое устройство

 @Entity('units') class Unit {  @PrimaryGeneratedColumn('uuid')  id: string;   @Column()  name: string;   @CreateDateColumn()  created_at: Date;   @UpdateDateColumn()  updated_at: Date;   @Column()  locale_id: string;   @OneToOne(() =gt; Locale, { eager: true })  @JoinColumn({ name: 'locale_id' })  locale: Locale; }