mirror of
https://github.com/penpot/penpot.git
synced 2025-05-05 16:55:54 +02:00
🎉 Add ordering field to pages (for make it easy sorting on sql).
This commit is contained in:
parent
8e81d796f0
commit
3fcbb204cf
2 changed files with 14 additions and 9 deletions
|
@ -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
|
||||||
|
|
|
@ -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)))
|
||||||
|
|
Loading…
Add table
Reference in a new issue