0

我无法让 Neo4j 添加独特的关系。我正在使用 neo4j 2.0.0.M6 和 REST API。我使用这个网址:/db/data/index/relationship/rels?uniqueness=get_or_create,而且我一直收到“错误请求”。我遵循这个 API 指南
我做错了什么?我应该传入索引名称还是关系键?我发送带有 3 个键的 json - “开始”、“结束”、“类型”。错误消息说我缺少必需的键:[value, key] - 我应该放什么?

4

1 回答 1

2

我理解你的困惑。

这个 api 端点正在做两件事。1. 它正在建立一种关系。2. 如果它不存在,它会将其添加到索引中

并且索引有一个名称、一个键和一个值。

因此,如果我有一个名为“People”的索引,我可能想要索引“Name”和“DateOfBirth”这两个键。这些值可以分别是“LameCoder”和“11/11/2013”​​。

您使用的 URL 隐含地表示索引的名称是“rels”,因为这就是 URL 的那部分的用途。

这是文档中的示例。Key 和 Value 基本上是要添加到索引中的内容。它们不一定必须存在于关系的属性映射中。所以在这种情况下,下面的键是名称,值是彼得。因此,它将确保在创建关系时索引“rels”中不存在值为“Peter”的键“name”的其他索引条目。

{
  "key" : "name",
  "value" : "Peter",
  "start" : "http://localhost:7474/db/data/node/444",
  "end" : "http://localhost:7474/db/data/node/445",
  "type" : "KNOWS"
}

这并没有在这两个节点之间创建唯一的关系。这是整个索引的独特关系。因此,如果您希望这样可以确保两个节点之间仅存在一种类型的关系,那么这不是您想要的。

于 2013-11-11T14:49:18.240 回答