最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

findOne在Nodejs中发送NULL

网站源码admin18浏览0评论

findOne在Nodejs中发送NULL

findOne在Nodejs中发送NULL

我想使用findOne在数据库中呈现产品。我在URL中传递了ID,以按其ID查找产品。

但是,我得到了null

这是我的server.js文件。

app.get('/boutique/:id', (request, reponse) => {
    mongo.connect(url, function (err, db) {
        var dbo = db.db("pool");
        var cherche_id = request.params.id;

        dbo.collection("products").findOne({id : cherche_id}, function(err, result) {
            if (err) throw err;
            console.log(result);
            reponse.render('boutique_id');

            db.close();
        });
    });
});

如果我这样改变我的findOne也可以使用:

findOne({id : 2},
回答如下:

request.params.id是字符串,而数据库中的id字段是数字。 MongoDB首先比较类型,因此"2"不等于2。您需要先将值转换为数字:

var cherche_id = +request.params.id;

编辑:unary plus operator在这种情况下将字符串转换为数字

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论