Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/423.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Mongo不使用node.js程序_Javascript_Node.js_Mongodb - Fatal编程技术网

Javascript Mongo不使用node.js程序

Javascript Mongo不使用node.js程序,javascript,node.js,mongodb,Javascript,Node.js,Mongodb,我正在尝试创建一个简单的node.js程序来输入、更新和删除人员的“姓名和职务”记录,并在浏览器中显示相同的内容。我正在使用node.js、mongo和jade 以下是我的server.js文件(在“/base”文件夹中): 我有一个index.jade文件(在“/base/views/”子文件夹中): 我的update.jade文件(在“/base/views/”子文件夹中)是: 当我在浏览器中执行localhost:3000时,它会显示 GET http://localhost:3000/

我正在尝试创建一个简单的node.js程序来输入、更新和删除人员的“姓名和职务”记录,并在浏览器中显示相同的内容。我正在使用node.js、mongo和jade

以下是我的server.js文件(在“/base”文件夹中):

我有一个index.jade文件(在“/base/views/”子文件夹中):

我的update.jade文件(在“/base/views/”子文件夹中)是:

当我在浏览器中执行localhost:3000时,它会显示

GET http://localhost:3000/ net::ERR_CONNECTION_REFUSED

非常感谢您的帮助,非常感谢

错误是我没有在程序中打开数据库。打开(函数(err,db){…});是缺少的部分

工作代码:

var express= require("express"),
http= require("http"),
bodyparser= require("body-parser"),
mongo= require("mongodb");

var app= express(), 
db= new mongo.Db("newapp", new mongo.Server("localhost", "27017"), 
                             {safe:true}, {auto_reconnect: true});

app.use(bodyparser.urlencoded({extended: true}));

db.open(function(err, db){
    if(err)
        console.log(err);

    people= db.collection("people");

    app.get("/", function(req, res){
        var cursor= people.find();
        cursor.toArray(function(err, docs){
            if(err) 
                throw err;
            res.render("index.jade", {people: docs});   
        });
    });

    app.post("/", function(req, res){
        people.insert({name: req.body.name, job: req.body.job}, 
            function(err, doc){
                    if(err)
                        throw err;
                    res.redirect("/");
            });
    });

    app.get("/update/:id", function(req, res){
        people.findOne({_id: new mongo.ObjectID(req.params.id)}, 
            function(err, doc){
                    if(err) 
                        throw err;
                    res.render("update.jade", {person: doc});
            });
    });

    app.post("/update/:id", function(req, res){
        people.update({_id: new mongo.ObjectID(req.params.id)},{
                    name: req.body.name,
                    job: req.body.job
            }, function(err, item){
                    if(err)
                        throw err;
                    res.redirect("/");
            });
    });

    app.get("/delete/:id", function(req, res){
        people.remove({_id: new mongo.ObjectID(req.params.id)},
            function(err){
            if(err)
                throw err;
            res.redirect("/");
            });
    });
});

app.listen(3000, function(){
    console.log("Now Listening on port: 3000");
});
index.jade(在视图文件夹中)是:

update.js(在视图文件夹中)是:


首先检查mongo是否正在运行。然后更改“localhost”而不是“127.0.0.1”,并确保端口3000可用!它应该是numberHmm,做了所有这些更改,mongo正在运行,端口3000是免费的;相同错误:加载资源失败:net::ERR_CONNECTION_refered请检查您的端口3000是否已绑定-使用-
netstat-an | grep LISTEN | grep-v^unix
也检查-是否给出相同的错误?127.0.0.1:3000给出相同的错误。端口3000未绑定,除非运行node server.js
form(method="POST")
    p Name:
            input(type="text", name="name", value="#{person.name}")

    p Job:  
            input(type="text", name="job", value="#{person.job}")

    p: button Update
GET http://localhost:3000/ net::ERR_CONNECTION_REFUSED
var express= require("express"),
http= require("http"),
bodyparser= require("body-parser"),
mongo= require("mongodb");

var app= express(), 
db= new mongo.Db("newapp", new mongo.Server("localhost", "27017"), 
                             {safe:true}, {auto_reconnect: true});

app.use(bodyparser.urlencoded({extended: true}));

db.open(function(err, db){
    if(err)
        console.log(err);

    people= db.collection("people");

    app.get("/", function(req, res){
        var cursor= people.find();
        cursor.toArray(function(err, docs){
            if(err) 
                throw err;
            res.render("index.jade", {people: docs});   
        });
    });

    app.post("/", function(req, res){
        people.insert({name: req.body.name, job: req.body.job}, 
            function(err, doc){
                    if(err)
                        throw err;
                    res.redirect("/");
            });
    });

    app.get("/update/:id", function(req, res){
        people.findOne({_id: new mongo.ObjectID(req.params.id)}, 
            function(err, doc){
                    if(err) 
                        throw err;
                    res.render("update.jade", {person: doc});
            });
    });

    app.post("/update/:id", function(req, res){
        people.update({_id: new mongo.ObjectID(req.params.id)},{
                    name: req.body.name,
                    job: req.body.job
            }, function(err, item){
                    if(err)
                        throw err;
                    res.redirect("/");
            });
    });

    app.get("/delete/:id", function(req, res){
        people.remove({_id: new mongo.ObjectID(req.params.id)},
            function(err){
            if(err)
                throw err;
            res.redirect("/");
            });
    });
});

app.listen(3000, function(){
    console.log("Now Listening on port: 3000");
});
form(method="POST")
    p Name:
        input(type="text", name="name")

    p Job:  
        input(type="text", name="job")

    p: button Add

if(people!==NULL)
    ul
        each person in people
                li
                    h2= person.name+ " ("+ person.job+ ")"
                    p
                        a(href="/update/#{person._id}") Update&nbsp
                        a(href="/delete/#{person._id}") Delete

else
    p No People
form(method="POST")
    p Name:
            input(type="text", name="name", value="#{person.name}")

    p Job:  
            input(type="text", name="job", value="#{person.job}")

    p: button Update