瀏覽代碼

fix(server): cannot delete an asset if presented in album (#2223)

* fix(server): cannot delete an asset if presented in album

* added migration

* preserve correct migration
Alex 2 年之前
父節點
當前提交
db628cec11
共有 2 個文件被更改,包括 2 次插入2 次删除
  1. 1 1
      server/libs/infra/src/entities/album.entity.ts
  2. 1 1
      server/libs/infra/src/entities/asset.entity.ts

+ 1 - 1
server/libs/infra/src/entities/album.entity.ts

@@ -43,7 +43,7 @@ export class AlbumEntity {
   @JoinTable()
   @JoinTable()
   sharedUsers!: UserEntity[];
   sharedUsers!: UserEntity[];
 
 
-  @ManyToMany(() => AssetEntity)
+  @ManyToMany(() => AssetEntity, (asset) => asset.albums)
   @JoinTable()
   @JoinTable()
   assets!: AssetEntity[];
   assets!: AssetEntity[];
 
 

+ 1 - 1
server/libs/infra/src/entities/asset.entity.ts

@@ -101,7 +101,7 @@ export class AssetEntity {
   @JoinTable({ name: 'shared_link__asset' })
   @JoinTable({ name: 'shared_link__asset' })
   sharedLinks!: SharedLinkEntity[];
   sharedLinks!: SharedLinkEntity[];
 
 
-  @ManyToMany(() => AlbumEntity, (album) => album.assets)
+  @ManyToMany(() => AlbumEntity, (album) => album.assets, { onDelete: 'CASCADE', onUpdate: 'CASCADE' })
   albums?: AlbumEntity[];
   albums?: AlbumEntity[];
 }
 }