使用循环AJAX匹配id和子id,并将它们与Neo4j关联

Match IDs and subIDs with looped AJAX and Relate them with Neo4j

本文关键字:id 关联 Neo4j 循环 AJAX 匹配 和子      更新时间:2023-09-26

标题可能不清楚,但问题是:
我有一个数组,其中存储了一些main-equipment数据的id。每个设备实体都有一些child-equipment及其子id。
我对服务器进行AJAX调用,通过循环main-equipment的id来检索每个child-equipment的子id。后来,我想将单个main-equipment ID与其child-equipment ID进行映射,并与Neo4j图形数据库分配它们之间的关系。

for (var j in mainIDs) {
   $.ajax({
     type: "GET",
     url: "https://someserver.com/api/v1/equipment/"+mainIDs[j]+"/childequipments",
     dataType: "json",
     cache: false
       }).done(function (result) {
           // get ID number of child equipments
           var results = result.content;
           for (var i = 0; i < results.length; i++) {
             $.ajax({
                type: "POST",
                url: "http://localhost:7474/db/data/transaction/commit",
                accepts: {json: "application/json"},
                dataType: "json",
                contentType: "application/json",
                data: JSON.stringify({"statements": [{"statement": "START n=node(*), m=node(*) WHERE has (n.id) and has(m.id) and n.id ='"+mainIDs[j]+"' and m.id='"+results[i].id+"' MERGE (m)-[:BELONGS_TO]->(n)"}]}),
                success: function(result) {
                  console.log('successful');
           }

我在这个查询中得到的东西类似于以下逻辑:

Equipment 11 has child-equipment 20
Equipment 11 has child-equipment 21
Equipment 11 has child-equipment 22
Equipment 13 has child-equipment 40
Equipment 13 has child-equipment 41

但是我只得到一个main-equipment ID(通常是第一个)与所有child-equipment ID而不是每个main-equipment ID。我怎样才能达到上述结果呢?谢谢。

当您执行for (var j in mainIDs) {时,您正在使用forEach。

+mainIDs[j]+

或者您可以只传递j,如+j+,或者您可以更改for方法:

for ( var j=0 ; j <= mainIDs ; j++) {

然后+mainIDs[j]+