我在 windows 上使用 sqlite3 数据库玩弄 clojure 及其 korma 库。我以 7web 书为例。它介绍了select*
函数及其 friend 。
但是使用 fields
函数添加字段而不是限制。
;; models.clj
(defentity issue
(entity-fields :id :project_id :title :description :status)
(has-many comment))
;; repl
test=> (-> (select* issue)
#_=> (fields :title)
#_=> (as-sql))
"SELECT \"issue\".\"id\", \"issue\".\"project_id\", \"issue\".\"title\", \"issue\".\"description\", \"issue\".\"status\", \"issue\".\"title\" FROM \"issue\""
我错过了什么吗?
最佳答案
如问题 #251 中所述原因是 entity-fields
表达。它定义了查询的默认字段。 fields
函数将更多字段添加到默认值。按设计工作。
因此我删除了 entity-fields
在 defentity
内.
;; models.clj
(defentity issue
(has-many comment))
;; repl
test=> (-> (select* issue)
#_=> (fields :title)
#_=> (as-sql))
"SELECT \"issue\".\"title\" FROM \"issue\""
test=> (-> (select* issue)
#_=> (as-sql))
"SELECT \"issue\".* FROM \"issue\""
关于clojure - korma 的选择字段功能不拒绝列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30424533/