From 240b682a65b7169c2d195805093e418f9386c0ff Mon Sep 17 00:00:00 2001 From: Pranav C Date: Fri, 20 Aug 2021 19:54:00 +0530 Subject: [PATCH] fix: Delete project by id instead of title Signed-off-by: Pranav C --- packages/nocodb/src/lib/noco/NcProjectBuilder.ts | 2 +- packages/nocodb/src/lib/noco/meta/NcMetaIO.ts | 1 + packages/nocodb/src/lib/noco/meta/NcMetaIOImpl.ts | 6 ++++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/packages/nocodb/src/lib/noco/NcProjectBuilder.ts b/packages/nocodb/src/lib/noco/NcProjectBuilder.ts index b50b04fb35..e39c35a0d4 100644 --- a/packages/nocodb/src/lib/noco/NcProjectBuilder.ts +++ b/packages/nocodb/src/lib/noco/NcProjectBuilder.ts @@ -436,7 +436,7 @@ export default class NcProjectBuilder { case 'projectDelete': this.router.stack.splice(0, this.router.stack.length); this.apiBuilders.splice(0, this.apiBuilders.length); - await this.app.ncMeta.projectDelete(this.title); + await this.app.ncMeta.projectDeleteById(this.id); await this.app.ncMeta.knex('nc_projects_users').where({project_id: this.id}).del(); for (const db of (this.config?.envs?.[this.appConfig?.workingEnv]?.db || [])) { const dbAlias = db?.meta?.dbAlias; diff --git a/packages/nocodb/src/lib/noco/meta/NcMetaIO.ts b/packages/nocodb/src/lib/noco/meta/NcMetaIO.ts index d18aab9328..9a63647eb7 100644 --- a/packages/nocodb/src/lib/noco/meta/NcMetaIO.ts +++ b/packages/nocodb/src/lib/noco/meta/NcMetaIO.ts @@ -125,6 +125,7 @@ export default abstract class NcMetaIO { public abstract projectGetById(projectId: string, encrypt?: boolean): Promise; public abstract projectDelete(title: string): Promise; + public abstract projectDeleteById(id: string): Promise; public abstract startTransaction(); diff --git a/packages/nocodb/src/lib/noco/meta/NcMetaIOImpl.ts b/packages/nocodb/src/lib/noco/meta/NcMetaIOImpl.ts index ee70496df8..7030e674ba 100644 --- a/packages/nocodb/src/lib/noco/meta/NcMetaIOImpl.ts +++ b/packages/nocodb/src/lib/noco/meta/NcMetaIOImpl.ts @@ -657,6 +657,12 @@ export default class NcMetaIOImpl extends NcMetaIO { }).delete(); } + public projectDeleteById(id: string): Promise { + return this.connection('nc_projects').where({ + id + }).delete(); + } + public async projectStatusUpdate(projectName: string, status: string): Promise { return this.connection('nc_projects').update({ status