Это, вероятно, не ошибка.Имейте в виду, что Datomic нигде не хранит сущности, все, что она хранит, это факты.Представление EntityMap содержит «фальшивку» :db/id
, но ваши данные на самом деле выглядят так:
[17592186045460 :customer/id 101]
[17592186045460 :customer/name "AAA"]
Таким образом, тот факт, что идентификатор теряется при преобразовании его в seq, может показаться непреднамеренным/ случайное поведение, но на самом деле не ошибка как таковая.
Обратите внимание, что вам не нужно использовать d/touch
, чтобы получить идентификатор - вы можете просто прочитать идентификатор напрямую.
(def customer (first (get-allo-customers-by-user (d/db conn) [:user/email "aaa@example.com"])))
(:db/id customer)