在密码查询中使用 current.id
Using current.id in cypher query
我不知道如何在 Cypher 查询中使用 current.id 参数。
${cypher('MATCH ... WHERE p.id=\'${current.id}\' RETURN ...)}
我尝试使用 ${concat()} 函数连接字符串,但我只发现如果字符串中有另一个函数,则不会执行 Cypher 查询。
如有任何想法,我们将不胜感激。
干杯
克里斯蒂安
当使用 ${}
时,您输入了一个 StructrScript 上下文,因此它将是 current.id
而不是另一个嵌套的 ${current.id}
。当尝试在 StructrScript 中连接字符串时,您可以使用 concat()
函数。我在本地测试了以下代码片段以重现您的问题:
${
cypher(
concat('MATCH (p) WHERE p.id = \'',current.id,'\' RETURN p')
)
}
或者,您可以在 ${{}}
调用的 JavaScript 上下文中工作。在这种情况下,您也可以使用 Structr 的内置函数。例如:
${{
var query = 'MATCH (p) WHERE p.id = \'' + Structr.current.id + '\' RETURN p';
var result = Structr.cypher(query);
Structr.print(result);
}}
我不知道如何在 Cypher 查询中使用 current.id 参数。
${cypher('MATCH ... WHERE p.id=\'${current.id}\' RETURN ...)}
我尝试使用 ${concat()} 函数连接字符串,但我只发现如果字符串中有另一个函数,则不会执行 Cypher 查询。
如有任何想法,我们将不胜感激。
干杯 克里斯蒂安
当使用 ${}
时,您输入了一个 StructrScript 上下文,因此它将是 current.id
而不是另一个嵌套的 ${current.id}
。当尝试在 StructrScript 中连接字符串时,您可以使用 concat()
函数。我在本地测试了以下代码片段以重现您的问题:
${
cypher(
concat('MATCH (p) WHERE p.id = \'',current.id,'\' RETURN p')
)
}
或者,您可以在 ${{}}
调用的 JavaScript 上下文中工作。在这种情况下,您也可以使用 Structr 的内置函数。例如:
${{
var query = 'MATCH (p) WHERE p.id = \'' + Structr.current.id + '\' RETURN p';
var result = Structr.cypher(query);
Structr.print(result);
}}