2014-07-01 39 views
0

我想知道如果通过REST的Cypher查询存在关系或返回失败是否可能。此外,我不想创建任何类型的索引。Neo4J API Rest:创建唯一关系或返回FAIL而无索引

这是我的用例:用户只能评论一次。因此,我想创建关系(用户) - [:LIKES] - >(注释),如果存在,则使用Cypher查询通过REST返回失败。

我的方法是使用CREATE UNIQUE和RETURN某些代码,我将在后端解释这些代码,以了解是否必须将409冲突发送到后端的客户端。但这种做法似乎很混乱...

任何想法?谢谢。

回答

1

如果你愿意把你的房产放在你的LIKES关系中,你可以这样做。

WITH timestamp() AS now 
MERGE (user)-[like:LIKES]->(comment) 
ON CREATE SET like.created_at = timestamp() 
RETURN like.created_at >= now 

如果查询返回你知道像创建true否则它以前就存在,并可以相应地处理它。