草庐IT

Node-red

全部标签

node.js - Mongoose ,无法从文档中获取数据

我有一个模型用户:db.Users.find({username:"some_name"},function(err,result){if(err){console.error(err);}elseif(result){console.log(result);console.log(result.username);}});第一个console.log返回对象:{__v:0,email:'some_email@mail.ru',password:'123456',username:'some_name',_id:57090f48f0b2dc101a855eb2}奇怪的是,我无法访问那些

node.js - 使用 Array 进行 MongoDB 正则表达式搜索

我正在寻找一种逻辑来从数据库中的1000条记录中检索数据。我不能在应用程序级别做。我有以两个双字母结尾的数据,如“ll,gg,ss,ff...”。想从数据库中检索以上述双字符结尾的单词。我的示例数据库:[{"word":"Floss"},{"word":"smacx"},{"word":"fuzz"},{"word":"grass"},{"word":"dress"},{"word":"puff"},{"word":"cliff"},{"word":"sniff"},{"word":"chess"},{"word":"kiss"},{"word":"fell"},{"word":"sh

node.js - $addToSet 聚合和多个数组

我有这个收藏:[{_id:ObjectId('myId1'),probes:['id_probe_1','id_probe_2']},{_id:ObjectId('myId2'),probes:['id_probe_1','id_probe_3']}]我想得到这样的数组:['id_probe_1','id_probe_2','id_probe_3']所以我尝试这个请求(来自nodeJS驱动程序):letfind=[{$match:{_id:{$in:[newObjectId('miId1'),newObjectId('myId2')]}}},{$group:{_id:null,prob

javascript - 将base64图像转换为Node Js中的文件

我是NodeJs的新手。我需要为用户添加个人资料图片。我从IOS应用程序收到base64图像请求。我需要将它存储在图像文件夹中,并将图像路径保存在mongodb数据库中。我使用了下面的代码,varbitmap=newBuffer(req.body.profile_image,'base64');//writebuffertofilefs.writeFileSync("images/example.jpg",bitmap);其中req.body.profile_image是base64图像。我收到以下错误,TypeError:Firstargumentmustbeastring,Buff

Node.js:async.map 越来越慢

你好,我使用Node.js提供一个API,用于在MongoDB数据库上存储数据。我对read方法进行了多次测试,该方法获取ID并返回相应的文档。关键是我必须按指定的顺序返回这些文件。为确保这一点,我使用了以下代码://Sequentiallyfetcheveryelementfunctionread(ids,callback){vari=0;varresults=[];functionnext(){db.findOne(ids[i],function(err,doc){results.push(err?null:doc);if(ids.length>++i){returnnext();

node.js - 通过 Mongoose 更新多个子文档?

例如,我们使用以下架构来定义评论树;{"_id":ObjectId("id_here"),"parentComment":"Thisismyopinion","isHidden":false,"comments":[{"comment":"Idisagreewithyouropinion","isHidden":false},{"comment":"TestPost","isHidden":false},....}因此,如果我们要更新父评论以将禁用短语的isHidden标志设置为true,我们会这样做;varuserComments=require('mongoose').model(

node.js - 从 Node 访问远程mongodb

我想通过node访问远程的mongodb数据。在我的app.js中写了以下内容:varmongo=require('mongodb');varMongoClient=require('mongodb').MongoClient;vardb=MongoClient.connect("mongodb://remote_url:27017/databasetest");//dbnameis:databasetestapp.use(function(req,res,next){req.db=db;next();});以下是为从数据库访问集合而编写的api:router.get('/get',f

node.js - 子文件与 Mongoose 人口

我有以下场景:用户可以登录网站。用户可以添加/删除投票(有两个选项的问题)。任何用户都可以通过选择任何选项来对民意调查发表意见。考虑到上述情况,我有三个模型-UsersPollsOptions。它们按依赖顺序如下:选项架构varoptionSchema=newSchema({optionName:{type:String,required:true,},optionCount:{type:Number,default:0}});轮询架构varpollSchema=newSchema({question:{type:String,required:true},options:[optio

node.js - mongodb是否需要在每个操作上进行连接

所以我对mongodb很陌生,我希望在我的应用程序中使用它。现在我讨厌冗余代码,但阅读如何将mongodb与node.js一起使用时,似乎有一种模式,在进行任何CRUD操作之前,您总是必须连接。官方文档中的示例:MongoClient.connect(url,function(err,db){assert.equal(null,err);insertDocument(db,function(){db.close();});});我的问题是。是否可以制作一个保持连接打开的中间件,这样您只需调用insertDocument(在上面的示例中)? 最佳答案

node.js - MongoDB 在不使用索引的情况下插入嵌套数组

我正在寻找$push一些东西到嵌套数组中,其中父数组匹配一个简单的属性条件:这是我的文档的样子:{name:"Foo",boardBucket:{currentBoardId:1234,items:[所以我想将"fooItem"推送到item的boardItems中,它有boardId:1234选项1:我可以使用点表示法并按索引访问我当然可以通过使用dot.notation来执行$push,它使用项目的索引,如下所示:this.update({'$push':{"boardBucket.items.0.boardItems":"fooItem"}});但如果我不知道索引怎么办?如何使用