Skip to content
Andros Fenollosa edited this page Sep 11, 2019 · 3 revisions
(ns my-namespace
  (:require 
   [tadam.templates :refer [raw-HTML]]
   ))

(defn index-with-raw-html
  ;; View only text
  [req]
  (raw-HTML "<html><body><h1>Welcome to Tadam</h1></body></html>" {}))
(ns my-namespace
  (:require 
   [tadam.templates :refer [raw-HTML]]
   ))

(defn index-with-raw-html-and-params
  ;; View HTML
  [req]
  (raw-HTML "<html><body><h1>I love the {{ name }}</h1></body></html>" {:name "functional programming"}))
(ns my-namespace
  (:require 
   [tadam.templates :refer [render-HTML]]
   ))

(defn index-with-html
  ;; View HTML
  [req]
  ;; path: resources/templates/web/home.html
  (render-HTML req "web/home.html" {:name "Tadam"}))
(ns my-namespace
  (:require 
   [tadam.templates :refer [render-JSON]]
   ))

(defn json-request
  ;; View JSON
  [req]
  (render-JSON {:id 101 :title "Clojure is every day more fantastic" :url "https://clojure.org/"}))
(ns my-namespace
  (:require 
   [tadam.templates :refer [render-HTML]]
   [tadam.db :refer [query_all]]
   ))

(defn all-posts
  ;; View database with multiple results
  [req]
  (let [links (query_all ["SELECT * FROM posts"])]
    (render-HTML req "web/all-posts.html" {:links links})))
(ns my-namespace
  (:require 
   [tadam.templates :refer [render-HTML]]
   [tadam.db :refer [query_one]]
   ))

(defn single-post
  ;; View database with one result
  [req]
  (let [post (query_one ["SELECT * FROM posts WHERE id = ?" (Integer/parseInt (-> req :params :id))])]
    (render-HTML "web/single.html" {:post post})))

Page 404

(ns my-namespace (:require [tadam.templates :refer [render-404]] ))

(defn page-404
  ;; View page 404
  [req]
  (render-404))
Clone this wiki locally