0

我试图找到一种有效的方法来确定数据库中是否已经定义了 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。

4

1 回答 1

1

我认为您正在寻找datomisca.SchemaManager.hasAttribute(...)https ://github.com/pellucidanalytics/datomisca/blob/develop/core/src/main/scala/datomisca/schemaManagement.scala

于 2014-10-24T15:54:09.953 回答