🎉 Add ordering field to pages (for make it easy sorting on sql).

This commit is contained in:
Andrey Antukh 2019-11-27 15:31:27 +01:00
parent 8e81d796f0
commit 3fcbb204cf
2 changed files with 14 additions and 9 deletions

View file

@ -10,6 +10,8 @@ CREATE TABLE IF NOT EXISTS pages (
modified_at timestamptz NOT NULL DEFAULT clock_timestamp(), modified_at timestamptz NOT NULL DEFAULT clock_timestamp(),
deleted_at timestamptz DEFAULT NULL, deleted_at timestamptz DEFAULT NULL,
ordering smallint,
name text NOT NULL, name text NOT NULL,
data bytea NOT NULL, data bytea NOT NULL,
metadata bytea NOT NULL metadata bytea NOT NULL
@ -27,7 +29,8 @@ CREATE TABLE IF NOT EXISTS pages_history (
pinned bool NOT NULL DEFAULT false, pinned bool NOT NULL DEFAULT false,
label text NOT NULL DEFAULT '', label text NOT NULL DEFAULT '',
data bytea NOT NULL data bytea NOT NULL,
metadata bytea NOT NULL
); );
-- Indexes -- Indexes

View file

@ -10,29 +10,31 @@
[clojure.tools.logging :as log] [clojure.tools.logging :as log]
[io.aviso.exception :as e])) [io.aviso.exception :as e]))
(defmulti handle-exception #(:type (ex-data %))) (defmulti handle-exception
(fn [err & rest]
(:type (ex-data err))))
(defmethod handle-exception :validation (defmethod handle-exception :validation
[err] [err req]
(let [response (ex-data err)] (let [response (ex-data err)]
{:status 400 {:status 400
:body response})) :body response}))
(defmethod handle-exception :not-found (defmethod handle-exception :not-found
[err] [err req]
(let [response (ex-data err)] (let [response (ex-data err)]
{:status 404 {:status 404
:body response})) :body response}))
(defmethod handle-exception :parse (defmethod handle-exception :parse
[err] [err req]
{:status 400 {:status 400
:body {:type :parse :body {:type :parse
:message (ex-message err)}}) :message (ex-message err)}})
(defmethod handle-exception :default (defmethod handle-exception :default
[err] [err req]
(log/error err "Unhandled exception on request:") (log/error err "Unhandled exception on request:" (:path req))
{:status 500 {:status 500
:body {:type :exception :body {:type :exception
:message (ex-message err)}}) :message (ex-message err)}})
@ -41,5 +43,5 @@
[error req] [error req]
(if (or (instance? java.util.concurrent.CompletionException error) (if (or (instance? java.util.concurrent.CompletionException error)
(instance? java.util.concurrent.ExecutionException error)) (instance? java.util.concurrent.ExecutionException error))
(handle-exception (.getCause error)) (handle-exception (.getCause error) req)
(handle-exception error))) (handle-exception error req)))