Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 我可以使用部分实体与TypeForm一起保存吗?_Typescript_Typeorm_Typeorm Datamapper - Fatal编程技术网

Typescript 我可以使用部分实体与TypeForm一起保存吗?

Typescript 我可以使用部分实体与TypeForm一起保存吗?,typescript,typeorm,typeorm-datamapper,Typescript,Typeorm,Typeorm Datamapper,所以我有这个桌子结构 --变更集0004订单:ccushing 如果不存在“订单”,则创建表。“订单” ( id uuid主键不为null默认uuid_generate_v4(), 状态uuid引用“订单”。订单状态 ); --变更集0004-h0-table-order事件类型:ccushing 如果不存在“订单”,则创建表。订单\u事件\u类型 ( id uuid主键不为null默认uuid_generate_v4(), 键文本唯一性不为空 ); --变更集0004-h1-table-ord

所以我有这个桌子结构

--变更集0004订单:ccushing
如果不存在“订单”,则创建表。“订单”
(
id uuid主键不为null默认uuid_generate_v4(),
状态uuid引用“订单”。订单状态
);
--变更集0004-h0-table-order事件类型:ccushing
如果不存在“订单”,则创建表。订单\u事件\u类型
(
id uuid主键不为null默认uuid_generate_v4(),
键文本唯一性不为空
);
--变更集0004-h1-table-order_事件:ccushing
如果不存在“订单”,则创建表。订单\u事件
(
id uuid主键不为null默认uuid_generate_v4(),
订单id uuid非空引用“订单”。“订单”(id),
事件类型uuid非空引用“顺序”。顺序事件类型(id),
事件jsonb不为空,
唯一(订单id、事件),
唯一(订单id、事件类型)
);
我想创建一个新的
OrderEventEntity
,但我不想在这样做时加载
Order
,因为我只需要在事件中获取
Order\u id

@Entity('order.order_event')
export default class OrderEventEntity implements Identifiable<string> {
  @PrimaryGeneratedColumn({ type: 'uuid' })
  readonly id!: string;

  @ManyToOne(() => OrderEventTypeEntity, ({ event }) => event)
  readonly eventType!: string;

  @ManyToOne(() => OrderEntity, ({ events }) => events)
  readonly order!: OrderEntity;
}
或者类似的(可能是部分负载)而不失去OneToMany?但仍然只有订单id。

有两个选项:

  • 在您的
    OrderEventEntity

  • 我应该猜到这一点,但它实际上并不关心对象是否来自加载的实例。
    const order = new Order({ id: 1234 })
    repo.save( new OrderEventEntity({ order: order, ... })
    
    @Entity('order.order_event')
    export default class OrderEventEntity implements Identifiable<string> {
      @PrimaryGeneratedColumn({ type: 'uuid' })
      readonly id!: string;
    
      @ManyToOne(() => OrderEventTypeEntity, ({ event }) => event)
      readonly eventType!: string;
    
      @Column()
      order_id: string;
    
      @ManyToOne(() => OrderEntity, ({ events }) => events)
      readonly order!: OrderEntity;
    }
    
    const order = { id: 1234 } as Order;
    repo.save( new OrderEventEntity({ order: order, ... })