2015-10-12 2 views
2

Я довольно новичок в sailsJS и Neo4J, мой дорожный блок - это создание связи между двумя узлами с идентификатором ссылки.Sails Neo4J Создать отношения с sails-neo4J

Мой Пример кода:

params.id = 'b8995544-02fc-4148-807f-d9c9f0ebd60f'; 
    var q = [ 
     'MATCH (w:word{id:'+ JSON.stringify(params.id)+ '}),(a:audiofiles{wordId:'+JSON.stringify(params.id)+'}) CREATE (w)-[r:HASMANY]->(a) RETURN r' 
    ]; 
    connections[connection].connection.query(q.join(' '), {}).then(function (result) { 
     console.log(result); 
     cb(null, result); 
     }, function (err) { 
     cb(err, null); 
     console.log(err); 
    }); 

Мой выход нечто:

 [ 'MATCH (w:word{id:"faedcf89-b323-48f4-9c29-f4396822f83c"}),(a:audiofiles{wordId:"faedcf89-b323-48f4-9c29-f4396822f83c"}) 
    CREATE (w)-[r:HASMANY]->(a) RETURN r' ] 

    { columns: [ 'r' ], 
data: [], 
    status: 
     { httpCode: '200', 
     statusCode: '200', 
     httpMessage: 'OK', 
     httpDescription: 'Request succeeded without error' } } 

Даже тогда он не создает отношения по Neo4j любому вопросу, я не могу отлаживать в этих рамках. Может ли кто-нибудь помочь мне в том, что является основной причиной, которая не создает отношения между ними.

ответ

1

Не знаете, где вы видите проблему, когда получаете HTTP-200 обратно, что хорошо.

Если вы имеете в виду, что data пуст -> он будет содержать свойства вновь созданной связи, а поскольку у вас их нет, он не будет содержать данные. Вы также можете вернуть id(r) или type(r)

В этом случае может быть просто, что у вас есть опечатка где-то либо в вашем id. Или имя собственности или что-то еще. Попробуйте запустить запрос вручную, если ваш MATCH действительно найдет word и audiofiles. (Метчики обычно имеют заглавные буквы, а не строчные буквы)

Вы должны использовать параметры!

params.id = 'b8995544-02fc-4148-807f-d9c9f0ebd60f'; 
var q = 
    'MATCH (w:word{id:{id}}), (a:audiofiles{wordId:{id}}) CREATE (w)-[r:HASMANY]->(a) RETURN r'; 
connections[connection].connection.query(q, params).then(function (result) { 
    console.log(result); 
    cb(null, result); 
    }, function (err) { 
    cb(err, null); 
    console.log(err); 
}); 
+0

Спасибо за ваш быстрый ответ, я прошел через письменный код, но я не нашел ошибки Typo в приведенном выше коде. не удалось отладить проблему. –

Смежные вопросы