Articles of mongodb

返回mongoDB中基于字段x的第一个字节x按ytypes分组的logging

如果我有以下json结构: [ { id: 1, type: "Drinks", isActive : "true", location: "QLD" }, { id: 2, type: "Drinks", isActive : "false", location: "NSW" }, { id: 3, type: "Drinks", isActive : "true" location: "QLD" }, { id: 3, type: "Drinks", isActive : "false" location: "QLD" }, { id: 3, type: "Drinks", isActive : "true" location: […]

Express / MongoDB – 数据库操作期间的意外行为

我有一个用户列表,我试图存储/更新到我的mongoDB数据库。 但是只有我列表中的最后一个元素被考虑在内,其他用户则不能进入thenfunction。 我是Nodejs的新手,这似乎是由于我不明白的同步行为。 var User = require('../to/path/user-service'); …. userList.forEach(function(user) { try { User.updateUser(user); } catch(err) { return console.error(err); } }); 用户服务 … var User = mongoose.model('User', userSchema); console.log(user.name); export.updateUser = function (user) { Issue.findOne({name: user.name}) .then((user) => { if(user) console.log(user.name + ' has been updated'); else console.log(user.name + ' has been created'); }).catch((err) => console.error(err)); […]

如何在Node中使用variables名创buildMongo Collection?

要将节点插入到Mongo Collection中,命令是 db.collection.insertOne({………}); 目前我收集的是用户input的string db.$$<VarCollectionName>.insertOne({……..]); 这样做会导致我的程序崩溃。 什么是正确的语法去做这个? 最终目标是每次用户使用我的方法时创build一个新的集合,并parsing一个文本文件。

MongoDB _id长度为25

我正尝试使用nodeJS从MongoDB中删除一个文档。 我的代码stream程如下:1.用户可以删除特定的学生。 因此,我把所有的学生文件从数据库中提取出来,存储在学生对象中。 3.用户可以使用提供的文本框过滤search,并可以select一个特定的学生,并可以删除。 请find下面的UI: HTML页面如下: <h2 align="center">Delete Student</h2> <div ng-controller="deleteStudentController"> <form ng-submit="deleteStudent()"> Student Name:<input type="text" letters-only ng-model="searchName"/><br> <div ng-repeat="student in students | filter:searchName" ng-show="searchName.length"> <input type="radio" ng-model="$parent.studentRadio" name="studentRadio" value="{{student._id}}"/>{{student | formatter}} </div> <input type="submit" value="Delete Student"/> {{output}} </form> </div> 与UI相关的angularJS控制器如下所示: mainApp.controller("deleteStudentController", function($scope,$http) { var resData = {}; $scope.student = {}; var urlGet = "/students/all"; […]

如何删除对象考虑到在Mongoose Node.js中的引用?

这是我的MongoDB架构: var partnerSchema = new mongoose.Schema({ name: String, products: [ { type: mongoose.Schema.Types.ObjectId, ref: 'Product' }] }); var productSchema = new mongoose.Schema({ name: String, campaign: [ { type: mongoose.Schema.Types.ObjectId, ref: 'Campaign' } ] }); var campaignSchema = new mongoose.Schema({ name: String, }); module.exports = { Partner: mongoose.model('Partner', partnerSchema), Product: mongoose.model('Product', productSchema), Campaign: mongoose.model('Campaign', campaignSchema) } […]

Node.js结合mongoose和Sails水线

我在Node.js上开发基于开源微软服务的项目。 问题描述 一些微服务是如此薄,只与MongoDB交互,所以我没有在那里使用Sails,并且首选直接使用Mongoose。 因此,我已经为我需要在mongo中坚持的每个对象实现了mongoose模式。 我还将在其他一些微服务中使用Sails.js,因此我将不得不实施Waterlinetypes的模式来保存和查询对象。 问题是模式的重复,我发现它是无用的。 我想到的解决scheme 我希望在所有的服务中使用一种types的模式。 现在有3个选项: 一个神奇的方法来连接模式(我不知道),并有两个世界同时工作(最不可能的select)。 为了在所有的微服务中使用Waterline,无论是否使用Sails.js,因此在系统中有1个模式types。 为了强制Sails.js使用mongoose适配器而不是Waterline,然后实现一些内部使用Mongoose的CRUD数据访问层(DAL),并在任何地方使用它来访问数据库。 因此,mongoose模式将贯穿整个系统。 但是后来我放弃了Waterline的封装function,如果将来我想改变DB,我会遇到麻烦。 我也可以在我的应用程序中妥协和重复模式,但这是最后的手段,因为我相信这个问题必须有一些解决scheme。

Node.js等到asynchronous函数完成,然后继续执行其余的代码

在我的代码中,我有2个for循环执行一个asynchronous函数(在两个循环中它是相同的函数),但是在这两个循环之后的代码必须等到执行它们之后才运行。 这是我的代码: for(var a = 0; a < videoIds.length; a++){ if(videoIds){ findVideo(videoIds[a], function(thumbnailPath, videoName){ // findVideo is the async function // it returns 2 values, thumbnailPath and videoName videoNames[a] = videoName; // and then these 2 values are written in the arrays thumbnaildPaths[a] = thumbnailPath; console.log('1'); }); } } // then the above code runs […]

find()和sort()在Mongoose中的含义是什么?

我是mongoose新手,所以有些我不太明白。 代码如下: 问题是 1我找不到这里有两个参数(就像find({})),为什么在这个代码中find两个参数? 2“sorting(sorting+sorting)”是什么意思? 我很困惑。 var sort = req.query.sort || "created"; var order = (req.query.order === "asc" ? "-" : ""); var limit = req.query.limit || "20"; var offset = req.query.offset || "0"; Opportunities.find(filterObject, '-email') .sort(order + sort) .skip(offset) .limit(limit) .populate('tags') .populate('location') .exec(function (err, opportunities) { if (err) return handleError(res, err); return res.json(200, opportunities); […]

如何用子文档数组更新MongoDB文档

我正在使用一个MongoDB数据库,这个数据库的集合模型类 , 学生 , 主题和学术performance 。 下面是基于Mongoose的模式和模型: var mongoose = require('mongoose'); var Schema = mongoose.Schema; var ObjectId = Schema.Types.ObjectId; // SUBJECT collection var subjectSchema = new Schema({ name : { type: String, required: true }, category : { type: String, required: true } }); var Subject = mongoose.model('Subject', subjectSchema); // STUDENT collection var studentSchema = […]

c#打开cmd并继续 – nodeJS仪表板更新

我正在开发一个应用程序启动javascript / nodeJS文件通过一个简单的用户界面,加载JS脚本。 nodeJS仪表板 我想添加一个工具是“启动mongoDB” – 启动一个mongod实例。 我们用(mongod),然后是我们的服务器开始我们的DB拳头。 问题: 我可以通过c#Form打开一个CMD实例。 有什么build议么? PS。 图像中的mongod实例是手动启动的