Neo4j gem - 仅当两个节点不存在时才创建关系

Neo4j gem - Create relationship between two nodes only if it doesn't exist

如果我有两个节点 (self) 和 friend_node,检查我是否已经知道我的两个节点的最有效方法是什么。

我是根据您上次教我的内容构建的,但是考虑到我知道我的节点在哪里,这看起来很复杂。有没有更简单的?

self.query_as(:user).match(friend: {uuid: friend_node.id}).where("NOT(user-[:friends_with]->(friend:User))").pluck(:friend) unless friend_node.blank?

假设有一个名为 friends 的用户关联,只需执行 user.friends.include?(friend_node).