Skip to content

Commit bde3c58

Browse files
committed
update get by id example
1 parent c1d58d1 commit bde3c58

File tree

1 file changed

+14
-1
lines changed
  • clojure/resultful-crud/src/resultful_crud

1 file changed

+14
-1
lines changed

clojure/resultful-crud/src/resultful_crud/user.clj

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
[buddy.hashers :as hashers]
55
[clojure.set :refer [rename-keys]]
66
[toucan.db :as db]
7-
[ring.util.http-response :refer [ok created]]
7+
[ring.util.http-response :refer [ok not-found created]]
88
[compojure.api.sweet :refer [GET POST PUT DELETE]]
99
[resultful-crud.string-util :as str]))
1010

@@ -41,6 +41,16 @@
4141
(map #(dissoc % :password_hash))
4242
ok))
4343

44+
(defn user->response [user]
45+
(if user
46+
(ok user)
47+
(not-found)))
48+
49+
(defn get-user-handler [user-id]
50+
(-> (User user-id)
51+
(dissoc :password_hash)
52+
user->response))
53+
4454
(defn update-user-handler [id update-user-req]
4555
(db/update! User id (canonicalize-user-req update-user-req))
4656
(ok))
@@ -51,6 +61,9 @@
5161
(create-user-handler create-user-req))
5262
(GET "/users" []
5363
(get-users-handler))
64+
(GET "/users/:id" []
65+
:path-params [id :- s/Int]
66+
(get-user-handler id))
5467
(PUT "/users/:id" []
5568
:path-params [id :- s/Int]
5669
:body [update-user-req UserRequestSchema]

0 commit comments

Comments
 (0)