我正在建立一个数据组交易。我有
(def codes
[:first-code :second-code :third-code])
我需要以这种格式生成集合的向量:
[
{:db/id (d/tempid :db.part/region)
:db/ident :first-code}
{:db/id (d/tempid :db.part/region)
:db/ident :second-code}
{:db/id (d/tempid :db.part/region)
:db/ident :third-code}
]
我无法弄清楚如何习惯性地这样做。
答案 0 :(得分:3)
我认为你的意思是“地图矢量”。以下代码应该是好的:
(mapv
(fn [code]
{:db/id '(d/tempid :db.part/region)
:db/ident code})
codes)
答案 1 :(得分:2)
您可能想要使用for
理解:
(let [id '(d/tempid :db.part/region)]
(vec
(for [code codes]
{:db/id id
:db/ident code})))
或map
(mapv
,如果您特别需要矢量):
(let [id '(d/tempid :db.part/region)]
(->> codes
(mapv (fn [code]
{:db/id id
:db/ident code}))))
答案 2 :(得分:1)
我很确定有一种更简单的方法,但这将是一个良好的开端:
ps_configuration