6. Selmer
• Django inspired template system
• Django와 유사한 문법
• *.clj에 코드에서 필요한 map(KV pair)을 생성하고
html에서 이를 태깅하여 표현
• Selmer는 render, render-file 함수를 지원
• Luminus로 생성한 프로젝트는 layout/render 함수 재
정의 ( layout.clj )
7. Selmer 배워 보기 - 값 출력
(defn selemer1-page []
(selmer.parser/render
"<p>Hello {{user.first}} {{user.last}}</p>"
{:user {:first "John" :last “Doe"}}))
(defroutes home-routes
(GET "/selmer" [] (selemer1-page))
)
—————————————
Hello John Doe
8. Selmer 배워 보기 - with
(defn selemer-with-page []
(selmer.parser/render
"{% with total=business.employees|count %}{{
total }}{% endwith %} employees”
{:business {:employees (range 5)}}))
(defroutes home-routes
(GET “/selmer-with” [] (selemer-with-page))
)
—————————————
5 employees