次のようなマップの形式で動的に生成されたパラメーターのセットがあります
(def clauses {:apples 23 :plums 0 :bananas 7})
ステートメントで論理和を取りたいwhere
ので、Korma クエリと同等になる必要があります。
(select fruit-shop
(where (or {:apples 23}
{:plums 0}
{:bananas 7})))
マップのリストを生成するのはとても簡単です:
(map #(apply array-map %)
(into [] clauses))
しかし、がその値にバインドされる(or
前に、マクロ展開時に処理されるため、それに適用されたステートメントを使用することはできません。clauses
そのような場合、どのステートメントを使用する必要がありますか?