在NodeJS中,如何从具有不同字段名称的mongodb输出结果?

 暖心我在这_若惜 发布于 2023-01-12 14:51

我正在使用nodejs来查询mongodb,并希望输出带有自定义字段名称的json.

例如,来自MongoDB的原始json可能

    {id:1, text:"abc"}

我想输出它

    {ObjectID:1, DisplayText:"abc"};

我知道MongoDB在其聚合框架中有$ project运算符,但不确定如何在NodeJS中使用它们.

我正在使用的mongodb nodejs包

    var mongo = require('mongodb');
    var monk = require('monk');
    var db = monk('server:port/mydb');

对此提出任何建议.

1 个回答
  • 如果您正在使用monk,则可以通过.col所选集合对象上的访问器访问基础节点本机驱动程序集合类型:

      var db = require('monk')('localhost/test')
        , collection = db.get('example');
    
      collection.col.aggregate(
        [
          { "$project": {
            "_id": 0,
            "ObjectID": "$_id",
            "DisplayText": "$text"
          }}
        ],
        function(err,result) {
    
          console.log( JSON.stringify( result, undefined, 4 ) );
    
        }
      );
    

    请注意,.aggregate()以这种方式检索的方法不会像标准的monk集合对象那样包装在promise对象中.但至少这会向您展示如何访问和使用$project来重新塑造您的文档.

    2023-01-12 14:53 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有