TypeORM 更新特定列时,保存而不影响UpdateDateColumn

Sh0*_*224 9 typeorm

我想在更新视图列时保存而不影响 UpdateDateColumn。

该表是一个帖子表,视图很受欢迎。


UpdateDateColumn是在添加视图Column的数量时更新的。
我不希望视图列影响 UpdateDateColumn。
@Entity("post")
export default class Post extends BaseEntity {
  @PrimaryGeneratedColumn()
  idx: number;

  // Skip
  
  @Column({
    nullable: false,
    default: 0
  })
  view: number;

  @Column("timestampz")
  @CreateDateColumn()
  created_at: Date;

  @Column("timestampz")
  @UpdateDateColumn()
  updated_at: Date;
}
Run Code Online (Sandbox Code Playgroud)

请给我一个解决方案。

小智 8

不是一个完美的解决方案,但仍然是一个解决方案......

您可以使用日期列的值强制更新它:

getRepository(Post).update(postId, {
  view: newViewValue,
  updated_at: () => '"updated_at"'
})
Run Code Online (Sandbox Code Playgroud)

SQL 查询将如下所示:

UPDATE "post" SET "view" = $2, "updated_at" = "updated_at" WHERE "idx" = $1
Run Code Online (Sandbox Code Playgroud)