首页 > 解决方案 > 如何使用 NeDB 仅按名称查找文档?

问题描述

我正在尝试仅通过 NeDB 中的文档名称查找文档。我已经阅读了文档,但所有示例也搜索了一个值。我只插入一个文档,只需要按其名称查询。

    const Datastore = require('nedb')
        , db = new Datastore({ filename: './data/database.json', autoload: true })
                    
    db.find("myDocName", (err, docs)=>{ // this returns no results even though the document exists
                        
        if(docs[0]){           
             console.log(docs[0])    
        } else {
             database.db.insert({myDocName: {some: "data"})           
        }
                    
    })

我也试过用正则表达式匹配任何值,但无济于事:

    let regEx = /.*/
    database.db.find({"myDocName":regEx}, (err, docs)=>{
        ....

标签: javascriptnode.jsmongodbnedb

解决方案


看来$exists运营商可能正是您正在寻找的:

db.find({myDocName: {$exists: true}}, (err, docs)=>{
  ...
});

推荐阅读