Skip to content

Instantly share code, notes, and snippets.

@maacl
Created March 19, 2011 20:04
Show Gist options
  • Save maacl/877766 to your computer and use it in GitHub Desktop.
Save maacl/877766 to your computer and use it in GitHub Desktop.
cmc-application
(def cmc-application
(app
(wrap-session)
(wrap-if development? wrap-reload '[cmc.templates])
(wrap-if development? wrap-stacktrace)
;; set application root
(wrap-if development? wrap-file "resources")
["app" &]
(app
(wrap-security)
(wrap-params)
["logout"] logout
["login"] {:get login-form
:post authenticate-user}
;;operate on collection
["users"] {:get get-all-users
:post create-new-user}
["users" ""] {:get get-all-users
:post create-new-user}
["users" "new"] {:get create-new-user-form}
["users" "new" ""] {:get create-new-user-form}
;;operate on a record
["users" id] {:get #(get-user % id)
:post (dispatch-on-param "_method"
{"update" #(update-user % id)
"delete" #(delete-user % id)})}
["users" id "edit"] {:get #(edit-user-form % id)}
["users" id "edit" ""] {:get #(edit-user-form % id)})))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment