【发布时间】:2018-02-09 11:11:12
【问题描述】:
我希望能够为查询构建 where 子句。我想输入一个 where 条件数组并使用 korma 构建查询,如下所示:
(defn ^:private fetch-by
"Append conditions to the query."
[query ^clojure.lang.PersistentVector conditions]
(for [condition conditions]
(if (instance? clojure.lang.PersistentArrayMap condition)
(korma/where query condition) query)))
但是,这里的 for 循环会复制查询对象。是否可以合并这些对象或您可以推荐的其他方法来实现所需的输出?
【问题讨论】:
-
不是 korma 方面的专家,但似乎
(->> conditions (filter map?) (apply merge) (korma/where query))应该在这里工作