过滤neo4js中的关系

时间:2011-08-24 04:37:31

标签: neo4j

我使用neo4js将用户存储为属性为user_id的节点。从user1到用户2有一个朋友关系。

我正在尝试在节点user2(user_id = 2)上找到与user_id = 1的节点相关的incomming friend连接。

我正在使用neography库。 https://github.com/maxdemarzi/neography/

 u2 = Neography::Node.(id)
 u2.outgoing(:friends).filter("..........")

我不确定应该给出什么样的精确过滤器,这样我就可以过滤出节点与user_id = 1的关系。

此致

的Pankaj

1 个答案:

答案 0 :(得分:1)

您可以在neo4js中使用遍历来查找这些关系。

这是未经测试的代码,但您想要执行以下操作:

var promise = somenode.traverse({
    "prune_evaluator": {
        "language": "javascript",
        "body": "position.endNode().getId()!=2;" // Note that this is a string
    }},
    neo4j.traverse.RETURN_RELATIONSHIPS);

promise.then(function(relationships) {
    console.log(relationships);
});

遍历方法的第一个参数是遍历对象,有关可以放在那里的完整文档,请参阅http://docs.neo4j.org/chunked/snapshot/rest-api-traverse.html