12
我正在關注教程,http://www.datomic.com/company/resources/tutorial,但我想我缺少一個關於如何訪問Datomic時間模型的難題。在Datomic中,我如何獲得對特定實體的值所做更改的時間表視圖?
如果我做了一系列的增加和縮回
;; DO a series of transactions
;; (transact conn [:db/add entity-id attribute value0])
(use 'datomic.api)
(dir datomic.api)
(def conn (connect "datomic:dev://localhost:4334/demo"))
(transact conn '[:db/add 2000 :db/doc "Hello There"])
(q '[:find ?e ?n :where [?e :db/doc ?n] [(= 2000 ?e)]] (db conn))
; => <HashSet [[2000 "Hello There"]]>
(transact conn '[:db/add 2000 :db/doc "Hello There 1"])
(q '[:find ?e ?n :where [?e :db/doc ?n] [(= 2000 ?e)]] (db conn))
; => <HashSet [[2000 "Hello There 1"]]>
(transact conn '[:db/add 2000 :db/doc "Hello There 2"])
(q '[:find ?e ?n :where [?e :db/doc ?n] [(= 2000 ?e)]] (db conn))
; => <HashSet [[2000 "Hello There 2"]]>
(transact conn '[:db/add 2000 :db/doc "Hello There 3"])
(q '[:find ?e ?n :where [?e :db/doc ?n] [(= 2000 ?e)]] (db conn))
; => <HashSet [[2000 "Hello There 3"]]>
怎麼可能得到了一系列的價值的變化(實體2000屬性:DB/DOC)?
我想要得到的東西在
[ [Transaction Number, Time, Value] .... [Transaction Number, Time, Value]]
格式例如:
[ [T1, "2012-March-16-9:30:12", "Hello There"]
....
....
....
[T27, "2012-June-14-9:54:38", "Hello There 3"] ]
它不能是困難的,但也有很多:DB內部參數,我我不熟悉。
很酷...會有這個遊戲=) – zcaudate