如何使用clojure将所有文件包含在文件夹中。
这是我的代码:
(defn LoadFiles[]
(include "utils")
)
(LoadFiles)
但上面的代码无效。
答案 0 :(得分:2)
据我所知,在clojure中没有include
(如果我错了,请纠正我)。
您应该使用use
或require
。
这个应该可以工作(对于utils
顶层的所有.clj文件,但你可以很容易地将它扩展为递归):
(defn list-sources [path]
(map #(str path "." (second (re-matches #"^(\w+)\.clj$" (.getName %))))
(filter #(.isFile %) (file-seq path))))
(run! #(require (vector (symbol %) :refer :all))
(list-sources (java.io.File. "utils")))
答案 1 :(得分:1)
可能是这样的:
def get_prepopulated_fields(self, request, obj=None):
if obj and obj.global_status == AVAILABLE_STORY:
return {}
return self.prepopulated_fields