|
|
@ -2,6 +2,7 @@
|
|
|
|
(:require ["pg" :refer [Client]]
|
|
|
|
(:require ["pg" :refer [Client]]
|
|
|
|
[cljs.core.async :refer [go, take!, put!, >!, chan]]
|
|
|
|
[cljs.core.async :refer [go, take!, put!, >!, chan]]
|
|
|
|
[cljs.core.async.interop :refer-macros [<p!]]
|
|
|
|
[cljs.core.async.interop :refer-macros [<p!]]
|
|
|
|
|
|
|
|
[cljs.core :refer [clj->js js->clj]]
|
|
|
|
[blog.env :as env]))
|
|
|
|
[blog.env :as env]))
|
|
|
|
|
|
|
|
|
|
|
|
(defn create-client
|
|
|
|
(defn create-client
|
|
|
@ -37,8 +38,10 @@
|
|
|
|
(try
|
|
|
|
(try
|
|
|
|
(let [res (<p! (.query client
|
|
|
|
(let [res (<p! (.query client
|
|
|
|
"select * from articles where id=$1"
|
|
|
|
"select * from articles where id=$1"
|
|
|
|
(cljs.core/clj->js [id])))]
|
|
|
|
(clj->js [id])))]
|
|
|
|
(>! channel (.-rows res)))
|
|
|
|
(>! channel (-> (.-rows res)
|
|
|
|
|
|
|
|
(js->clj :keywordize-keys true)
|
|
|
|
|
|
|
|
(first))))
|
|
|
|
(catch js/Error err (js/console.log (ex-cause err)))))
|
|
|
|
(catch js/Error err (js/console.log (ex-cause err)))))
|
|
|
|
channel)
|
|
|
|
channel)
|
|
|
|
|
|
|
|
|
|
|
|