Add the express-handlebars as a template engine.

main
KKlochko 1 year ago
parent 1ad0610f19
commit ff2ad7de9d

858
package-lock.json generated

File diff suppressed because it is too large Load Diff

@ -7,6 +7,7 @@
}, },
"dependencies": { "dependencies": {
"express": "^4.19.2", "express": "^4.19.2",
"express-handlebars": "^7.1.2",
"pg": "^8.11.3" "pg": "^8.11.3"
} }
} }

@ -1,5 +1,6 @@
(ns blog.server (ns blog.server
(:require ["express" :as express] (:require ["express" :as express]
["express-handlebars" :refer [engine]]
[blog.db :as db] [blog.db :as db]
[blog.env :as env])) [blog.env :as env]))
@ -7,6 +8,22 @@
(def port (env/get-port)) (def port (env/get-port))
(def client (db/create-client)) (def client (db/create-client))
(defn setup-engine
"Sets the engine to handlebars and simple set up."
[]
; For using .hbs as the file extension instead of .handlebars
(. app
engine ".hbs" (engine (-> {:extname ".hbs"
:defaultLayout "main"}
(cljs.core/clj->js))))
(. app
set "view engine" ".hbs")
(. app
set "views" "./views"))
(defn set-routes (defn set-routes
"Sets the routes for server." "Sets the routes for server."
[] []
@ -17,6 +34,7 @@
(defn start (defn start
"Starts server." "Starts server."
[] []
(setup-engine)
(set-routes) (set-routes)
(db/connect-client client) (db/connect-client client)

Loading…
Cancel
Save