我有很多标签作为输入。我想迭代并设置它。以下代码确实给出了错误:
<div class="row">
<div class="col-xs-12 col-sm-12 col-lg-6">
<ul class="list-group">
@for ($i = 5; $i < 10; $i++)
//code
@endfor
</ul>
</div>
当我执行时,我收到以下消息:
警告:未定义变量
MATCH (n:Node) WITH collect(n.lab) as labels FOREACH (x IN labels | SET n:x);
(第3行,第28列(偏移量:73)) “FOREACH(x IN标签| SET n:x)”
答案 0 :(得分:1)
首先,您忘记将n
传递给下一个上下文。那就是:
WITH n, collect(n.lab) as labels
其次,使用纯Cypher无法以这种方式设置标签。执行SET n:x
后,您将在节点x
中添加标签n
。但是你可以使用APOC procedure apoc.create.addLabels
这样做:
MATCH (n:Node)
WITH n, collect(n.lab) as labels
call apoc.create.addLabels(n, labels) yield node
return *