假设您已经完成了defdb。我有一个表“ items”,其中有两个字段,“ id”(PK)和“ item”。我想设置一个实体,以便每当选择它时,我只会在“ item”中获得条目。从documentation判断,我认为korma/entity-fields
是实现此目的的方法。
(require '[korma.core :as korma])
(korma/defentity items
(korma/entity-fields :item))
(korma/select items)
;; Wanted: [{:item "foo"}]
;; Received: [{:id 1, :item "foo"}]
我正在使用科尔马0.3.0-beta7。我怎样才能使
korma/select
做我想做的? 最佳答案
我不认为您可以从defentity
中执行此操作-select的工作方式无需显式传递字段列表就是select *
。
如何基于科尔马/选择宏:
(defmacro select-without-id
[ent & body]
`(let [query# (-> (korma/select* ~ent)
(korma/fields (vec (:fields ~ent)))
~@body)]
(korma/exec query#)))