Browse Source

fix(core): Fix deletion of Collections

Closes #297. The error was due to a foreign key violation on the CollectionAsset. Fixed by adding a delete cascade to the CollectionAsset

BREAKING CHANGE: The CollectionAsset entity had a cascade delete defined, which will require a DB migration.
Michael Bromley 5 years ago
parent
commit
44916b756b

+ 2 - 0
packages/core/e2e/collection.e2e-spec.ts

@@ -486,6 +486,7 @@ describe('Collection resolver', () => {
                         translations: [
                             { languageCode: LanguageCode.en, name: 'Delete Me Parent', description: '' },
                         ],
+                        assetIds: ['T_1'],
                     },
                 },
             );
@@ -500,6 +501,7 @@ describe('Collection resolver', () => {
                             { languageCode: LanguageCode.en, name: 'Delete Me Child', description: '' },
                         ],
                         parentId: collectionToDeleteParent.id,
+                        assetIds: ['T_2'],
                     },
                 },
             );

+ 1 - 1
packages/core/src/entity/collection/collection-asset.entity.ts

@@ -13,6 +13,6 @@ export class CollectionAsset extends OrderableAsset {
     @Column()
     collectionId: ID;
 
-    @ManyToOne(type => Collection, collection => collection.assets)
+    @ManyToOne((type) => Collection, (collection) => collection.assets, { onDelete: 'CASCADE' })
     collection: Collection;
 }