mirror of
https://github.com/Shadowfita/docmost.git
synced 2026-07-20 23:12:46 +10:00
new migration file
This commit is contained in:
@@ -23,7 +23,7 @@ export async function up(db: Kysely<any>): Promise<void> {
|
|||||||
.addColumn('deletedById', 'uuid', (col) => col)
|
.addColumn('deletedById', 'uuid', (col) => col)
|
||||||
.addColumn('spaceId', 'uuid', (col) => col.notNull())
|
.addColumn('spaceId', 'uuid', (col) => col.notNull())
|
||||||
.addColumn('workspaceId', 'uuid', (col) => col.notNull())
|
.addColumn('workspaceId', 'uuid', (col) => col.notNull())
|
||||||
.addColumn('isLocked', 'boolean', (col) => col.notNull())
|
.addColumn('isLocked', 'boolean', (col) => col.defaultTo(false).notNull())
|
||||||
.addColumn('status', 'varchar', (col) => col)
|
.addColumn('status', 'varchar', (col) => col)
|
||||||
.addColumn('publishedAt', 'date', (col) => col)
|
.addColumn('publishedAt', 'date', (col) => col)
|
||||||
.addColumn('createdAt', 'timestamp', (col) =>
|
.addColumn('createdAt', 'timestamp', (col) =>
|
||||||
@@ -44,6 +44,5 @@ export async function up(db: Kysely<any>): Promise<void> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export async function down(db: Kysely<any>): Promise<void> {
|
export async function down(db: Kysely<any>): Promise<void> {
|
||||||
await db.schema.dropIndex('IDX_pages_tsv').on('pages').execute();
|
|
||||||
await db.schema.dropTable('pages').execute();
|
await db.schema.dropTable('pages').execute();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,22 @@
|
|||||||
|
import { type Kysely, sql } from 'kysely';
|
||||||
|
|
||||||
|
export async function up(db: Kysely<any>): Promise<void> {
|
||||||
|
await sql`CREATE FUNCTION pages_tsvector_trigger() RETURNS trigger AS $$
|
||||||
|
begin
|
||||||
|
new.tsv :=
|
||||||
|
setweight(to_tsvector('english', coalesce(new.title, '')), 'A') ||
|
||||||
|
setweight(to_tsvector('english', coalesce(new.\"textContent\", '')), 'B');
|
||||||
|
return new;
|
||||||
|
end;
|
||||||
|
$$ LANGUAGE plpgsql;`.execute(db);
|
||||||
|
|
||||||
|
await sql`CREATE TRIGGER pages_tsvector_update BEFORE INSERT OR UPDATE
|
||||||
|
ON pages FOR EACH ROW EXECUTE FUNCTION pages_tsvector_trigger();`.execute(
|
||||||
|
db,
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function down(db: Kysely<any>): Promise<void> {
|
||||||
|
await sql`DROP trigger pages_tsvector_update ON pages`.execute(db);
|
||||||
|
await sql`DROP FUNCTION pages_tsvector_trigger`.execute(db);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user