如何根据查询请求在neo4j中创建关系

时间:2017-11-03 04:37:05

标签: python flask neo4j cypher

我需要在Flask中根据查询请求创建关系。 假设我的请求查询是:

http://0.0.0.0:8888/purchased/sbk/24 

我在Flask中的请求处理程序如下:

@app.route('/purchased/<username>/<product_id>', methods=['get'])
def create_cm(username,product_id):
    session = driver.session()
    session.run("MATCH (a:Person),(b:Product)"
               "WHERE a.name= 'username' AND b.id= 'product_id'"
               "CREATE (a)-[:PURCHASED]->(b)")
    session.close()
    return 'OK'

我收到了回复消息&#39;确定&#39;在浏览器上但我无法在neo4j中看到任何关系。请告诉我这里缺少的东西。

1 个答案:

答案 0 :(得分:0)

username&amp;查询中的product_id是字符串而不是变量吗?

您可以尝试使用此代码:

@app.route('/purchased/<username>/<product_id>', methods=['get'])
def create_cm(username,product_id):
    session = driver.session()
    session.run("MATCH (a:Person),(b:Product) WHERE a.name=$username AND b.id=$product_id CREATE (a)-[:PURCHASED]->(b)", username=username, product_id=product_id)
    session.close()
    return 'OK'

干杯