是否可以在enlive中从源文件夹外部提供模板?
我想从我的resources / public / templates文件夹而不是src / templates文件夹中获取模板,我该怎么做?
谢谢, 穆尔塔扎
答案 0 :(得分:3)
您是否尝试在类路径中包含包含模板的文件夹。我相信enlive会查看你的类路径以找到你指定的模板。
如果resources / public文件夹已在您的类路径中,则模板路径应类似于
(deftemplate template-name“templates / path / to / template”[]
.....)
答案 1 :(得分:1)
我将所有模板放在不在类路径上的文件中,并使用:
定义它们(defmacro deftemplate- [name source & rest]
`(deftemplate ~name (java.io/File. (str "path-to-pages/" ~source)) ~@rest ) )
答案 2 :(得分:1)
是的,是否可以从源文件夹外部提供模板。在我的情况下,它的工作没有任何改变我的配置;我的./resources
中的模板和./resources/public
中的静态资源。
注意:我在project.clj
:min-lein-version "2.0.0"
:plugins [[lein-ring "0.8.3"]]
:dependencies [[org.clojure/clojure "1.5.1"]
[compojure "1.1.5"]
[enlive/enlive "1.1.1"]]
我这样称./resources/index.html
:
(h/deftemplate index-template "index.html"
[s]
[:title] (h/content s))