微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

不再支持旧的参数语法 `{param}`

如何解决不再支持旧的参数语法 `{param}`

我尝试通过以下代码将数据写入 neo4j:

  var express = require('express');
  var path = require('path'); 
  var logger= require('morgan');
  var bodyParser= require('body-parser');
  var neo4j= require('neo4j-driver');

  var app=express(); 

  //view Engine:
  app.set('views',path.join(__dirname,'views'));
  app.set('view engine','ejs');
  app.use(logger('dev'));
  app.use(bodyParser.json());
  app.use(bodyParser.urlencoded({extended:false}));
  app.use(express.static(path.join(__dirname,'public')));
  var driver = neo4j.driver('bolt://localhost',neo4j.auth.basic('neo4j','5141'));
  var session = driver.session();

  app.get('/',function(req,res){
    session
        .run('MATCH(n:Movie) RETURN n LIMIT 25')
        .then(function(result){
            var movieArr = [];
                result.records.forEach(function(record){
                movieArr.push({
                    id: record._fields[0].identity.low,title: record._fields[0].properties.title,year: record._fields[0].properties.year
                    
                });
            });
            session
                .run('MATCH(n:Actor) RETURN n LIMIT 25')
                .then(function(result2)
                {
                    var actorArr = [];
                    result2.records.forEach(function(record){
                        actorArr.push({
                            id: record._fields[0].identity.low,name: record._fields[0].properties.name,})

                    });
                    res.render('index',{
                        movies: movieArr,actors: actorArr

                    });
                })
                .catch(function(err){
                    console.log(err);
                });
           
        })
        .catch(function(err){
            console.log(err);
        });
  });
  app.post('/movie/add',res){
    var title=req.body.title;
    var year=req.body.year;

    session
        .run('CREATE(n:Movie{title:{titleParam},year:{yearParam}}) RETURN n.title'   
            {titleParam:title,yearParam:year})
        .then(function(result){
            res.redirect('/');
            session.close();
        })
        .catch(function(err){
            console.log(err);
                });

    res.redirect('/');
  });
  app.listen(3000);
  console.log('Server started on port 3000 ');

  module.exports= app;

但我一直在终端中收到以下错误

Neo4jError:不再支持旧的参数语法 {param}。请使用$param
相反(第 1 行,第 22 列(偏移量:21)) "CREATE(n:Movie{title:{titleParam},year:{yearParam}}) RETURN n.title"

有人知道如何解决这个问题吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。