Javascript 如何使用Sigmajs和Neo4j通过输入搜索检索节点?
我正在尝试检索带有inputsearch字段的节点,但它不起作用。我认为密码查询中有一个错误。有人能帮我吗Javascript 如何使用Sigmajs和Neo4j通过输入搜索检索节点?,javascript,neo4j,sigma.js,Javascript,Neo4j,Sigma.js,我正在尝试检索带有inputsearch字段的节点,但它不起作用。我认为密码查询中有一个错误。有人能帮我吗 var inputsearch= document.getElementById('inputsearch').value; var buttonSearch=document.getElementById('buttonsearch'); buttonSearch.addEventListener('click', drawGraph(inputsearch));
var inputsearch= document.getElementById('inputsearch').value;
var buttonSearch=document.getElementById('buttonsearch');
buttonSearch.addEventListener('click', drawGraph(inputsearch));
function drawGraph(inputsearch){
sigma.neo4j.cypher(
{
url: 'http://localhost:7474', user: 'neo4j', password: 'neo4j' },
'match (n)-[r]->(m) where n.data.node.label =~ ".*(?i)'+inputsearch+'.*" return r,m,n;',s
,function(s) {
console.log('Number of nodes :'+ s.graph.nodes().length);
console.log('Number of edges :'+ s.graph.edges().length);
for(var i =0;i < s.graph.nodes().length; i++){
node = s.graph.nodes()[i];
s.settings('touchEnabled', true);
s.settings('mouseEnabled', true);
}})};
var inputsearch=document.getElementById('inputsearch').value;
var buttonSearch=document.getElementById('buttonSearch');
buttonSearch.addEventListener('click',drawGraph(inputsearch));
函数绘图图(inputsearch){
sigma.neo4j.cypher(
{
网址:'http://localhost:7474,用户:'neo4j',密码:'neo4j'},
'匹配(n)-[r]->(m),其中n.data.node.label=~”*(?i)+inputsearch+'.''返回r,m,n;',s
,功能{
log('节点数:'+s.graph.nodes().length);
console.log('边数:'+s.graph.edges().length);
对于(var i=0;i
这不是一个西格玛问题,而是一个Neo4j问题
如果您想这样做,您应该:
- 在每个节点上添加标签
节点
- 在每个节点上添加一个属性
,在每个节点上,您应该以小写形式连接所有要索引的字段\u search
- 在属性
上为节点\u search
节点
创建索引:
在:节点上创建索引(\u search)
MATCH (n:Node)-[r]->(m) WHERE n._search CONTAINS $inputsearch RETURN n LIMIT 1
我已经更新了我的JSFIDLE:您试图用这个密码查询搜索什么?我试图搜索所有在标签中包含我的查询字符串的节点。例如:我写矩阵,得到所有带有矩阵标签的节点,然后我可以双击节点,将其展开。sigmajs上的标签与Neo4j上的标签不同。在您的示例中,您正在搜索标签为
Movie
的节点和值为Matrix
的属性title
。对于个人
节点,属性将不相同(它是名称
),我理解,但这是一个示例,我希望检索节点,无论标签类别如何(个人、电影)。我可以这样做吗?因为我有很多节点标签,我只希望有一个搜索输入来检索一个节点。我已经尝试过这段代码,它工作得很好,但是节点会立即消失。函数绘图图(inputsearch){sigma.neo4j.cypher(neo4jConfig,'match(n:Ressource)-[r]->(m),其中n.nom=~”(?i)。*'+inputsearch+'.''返回n限制1;',s,applyStyle)};非常感谢@logisima,这对我很有帮助!!