2016-09-22 6 views
0

OKタイトルは明確ではないかもしれませんが、ここに問題があります:
main-equipmentのIDが格納されている配列があります。各機器エンティティには、サブIDを持つchild-equipmentがあります。
私は、main-equipmentのIDをループすることによって、それぞれのchild-equipmentのsubIDを取得するためにサーバーへのAJAX呼び出しを行います。後で個々のmain-equipment IDをchild-equipment IDでマップし、それらの間にNeo4jグラフデータベースとの関係を割り当てたいとします。
ループしたAJAXと一致するIDとサブID

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 

しかし、私はすべてのchild-equipmentで一つだけmain-equipment ID(通常は最初の)を取得IDの代わりにIDを入力してください。main-equipmentどのように私は上記の結果に達することができますか?ありがとう。

答えて

0

for (var j in mainIDs) {を実行すると、forEachが使用されています。このブロックで:

+mainIDs[j]+ 

またはあなただけ+j+のように、Jを渡すことができ、またはあなたがメソッドのために変更することができます。

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

、その後、あなたはあなたのための+mainIDs[j]+

+0

感謝できるようになりますが応答。私はあなたのソリューション、非同期、ループ閉鎖などを試みた。しかし、まだ問題があります。 – yalcinm1

+0

何が問題ですか? –

+0

ねえ。それは問題を引き起こした他の変数からのタイプミスでした。しかし、あなたの提案は別の問題を助けました。ありがとうございます。 – yalcinm1

関連する問題