我试图找到一种有效的方法来确定数据库中是否已经定义了 Datomic 属性。
我正在使用 Scala 包装器Datomisca。这是迄今为止我发现的最好的方法:
val exists =
Datomic.q(Query("""
[:find ?attr
:in $
:where [_ :db.install/attribute ?i]
[?i :db/ident ?part]
]"""), Datomic.database).map {
case DKeyword(keyword) => keyword.toString
}.contains(":some/attribute")
但我猜有更好的方法。
我正在使用 Datomisca 0.6 运行 Datomic-pro 0.9.4755。