Multiple features. Admin page with verweeste items. Breadcrump working.
This commit is contained in:
+26
-1
@@ -4,6 +4,7 @@
|
||||
racket/file
|
||||
racket/path
|
||||
racket/string
|
||||
"attachment-references.rkt"
|
||||
"config.rkt"
|
||||
"todo.rkt")
|
||||
|
||||
@@ -11,7 +12,7 @@
|
||||
database-schema-version
|
||||
migrate-database!)
|
||||
|
||||
(define current-schema-version 5)
|
||||
(define current-schema-version 6)
|
||||
|
||||
(define schema-1-statements
|
||||
(list
|
||||
@@ -239,6 +240,27 @@ SQL
|
||||
(record-schema-version! db 5))
|
||||
|
||||
|
||||
|
||||
(define (migrate-5->6! db)
|
||||
(query-exec db
|
||||
#<<SQL
|
||||
CREATE TABLE IF NOT EXISTS attachment_references (
|
||||
id BIGSERIAL PRIMARY KEY,
|
||||
attachment_id BIGINT NOT NULL REFERENCES attachments(id) ON DELETE CASCADE,
|
||||
page_id BIGINT NOT NULL REFERENCES pages(id) ON DELETE CASCADE,
|
||||
page_version_id BIGINT REFERENCES page_versions(id) ON DELETE CASCADE,
|
||||
current_reference BOOLEAN NOT NULL,
|
||||
referenced_at BIGINT NOT NULL
|
||||
)
|
||||
SQL
|
||||
)
|
||||
(query-exec db
|
||||
"CREATE INDEX IF NOT EXISTS attachment_references_attachment_idx ON attachment_references(attachment_id, current_reference, referenced_at DESC)")
|
||||
(query-exec db
|
||||
"CREATE INDEX IF NOT EXISTS attachment_references_page_idx ON attachment_references(page_id, current_reference)")
|
||||
(rebuild-attachment-references! db)
|
||||
(record-schema-version! db 6))
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
; goal : Bring a racket-wiki PostgreSQL database to the current schema.
|
||||
; pre : db is a writable PostgreSQL connection and config identifies the
|
||||
@@ -265,6 +287,9 @@ SQL
|
||||
(define after-bookmarks (database-schema-version db))
|
||||
(when (= after-bookmarks 4)
|
||||
(migrate-4->5! db))
|
||||
(define after-todo-reindex (database-schema-version db))
|
||||
(when (= after-todo-reindex 5)
|
||||
(migrate-5->6! db))
|
||||
(define resulting-version (database-schema-version db))
|
||||
(when (> resulting-version current-schema-version)
|
||||
(error 'migrate-database!
|
||||
|
||||
Reference in New Issue
Block a user