Articles of mongodb

MongoDB中的$ not操作符不起作用

我目前正在编写一个nodejs的web应用程序,使用MongoDB的所有数据库工作。 我目前正试图运行一个查询来删除所有符合一个标准,不匹配的文件。 这里是代码: { $and:[ {name:"bob"}, { hair: { $not: "brown" } } ] } 然而它返回 MongoError: invalid use of $not 谢谢您的帮助

如何获得(Node.js)具有不同值的MongoDB文档,其中一些值最低?

我有这样一个集合: { name : 'a', value: 10, word : 'baz' }, { name : 'a', value: 65, word : 'bar' }, { name : 'a', value: 3, word : 'foo' }, { name : 'b', value: 110, word : 'bar' }, { name : 'b', value: 256, word : 'baz' } 如何执行一个查询,导致selectname是唯一的完整文档, value是最低的? 例如: { […]

与打字稿`toArray`方法不工作的mongodb

我正在使用打字稿的Visual Studio。 这段代码中的所有东西都在编译 根据我正确使用toArray 的mongoDB文档 。 我有点新的打字稿,所以我不知道这是一个打字稿错误或mongodb。 testsvariables似乎有一个方法toArray但是当我称它没有任何回报。 console.log调用甚至没有运行。 根据文档和打字稿样本,这是做到这一点的正确方法。 任何人都可以与我分享我的代码中的任何错误,或“正确”的方式来做到这一点? ///<reference path="c:\DefinitelyTyped\mongodb\mongodb.d.ts"/> import mongodb = require("mongodb") var server = new mongodb.Server('localhost',27017, { auto_reconnect: true}) var db = new mongodb.Db('test', server, { w: 1 }); export interface Test { _id: mongodb.ObjectID; a: number; } db.open(function () { }); export function getTest(callback: (test: any) => void): […]

当试图在nodejs和mongoose文档上保存一个对象时遇到问题

我有这个模式: var schema = { id : { type:Number, unique:true }, name : String, kind : String, size : Object, skin : String, position : Object, velocity : Object, acceleration : Object, spritesheet : String, animation : Object, animations : Object, currentAnimation : String, visible : Boolean }; 注意:以下是buisness对象的一个​​实例。 this.dao是这样设置的: var elementSchema = mongoose.Schema(schema); this.dao […]

如何在json数组mongoose中findjson对象

我有一个像这样的json对象的数组 [{firstname: "Tom", lastname: "Smith"}, {firstname: "Bob", lastname: "Smith"}] 我想find该数组中的元素是否位于用户对象的字段名称也包含json对象的数组。 用户对象的一个​​例子是 { "names": [{firstname: "joe", "lastname":"smith"}, {"firstname": "john", "lastname":"doe"}]} 我想知道是否有任何这些名称对象包含在一个名为list2的随机长度的数组中 [{firstname: "Tom", lastname: "Smith"}, {firstname: "Bob", lastname: "Smith"}, {firstname: "Joe", lastname: "Smith"}, {firstname: "Jordan", lastname: "Smith"}, {firstname: "John", lastname: "Smith"}, {firstname: "Bill", lastname: "Smith"}] 我将如何创build一个mongoose查询来做到这一点? 谢谢!

意思是堆栈 – 意思是init抛出错误

我刚刚开始平均堆栈。 我正在按照http://www.mean.io/#!/中的说明开始操作。 我按照这里的指示安装了平均堆栈 sudo npm install -g meanio 但是当我尝试用这个创build一个应用程序 mean init myApp 它在terminal中显示这个错误并终止 Cloning branch: master into destination folder: myApp events.js:72 throw er; // Unhandled 'error' event ^ Error: spawn ENOENT at errnoException (child_process.js:988:11) at Process.ChildProcess._handle.onexit (child_process.js:779:34) 不知道这是什么; 我甚至无法弄清楚什么是错的。 任何机构可以告诉我这是什么错误? 提前致谢!!

向MongoDB高效地添加额外的字段

对于一个API,我从我的MongoDB返回一个对象列表。 为了更加RESTful,我想为每个对象添加一个字段link 。 我的方法是在处理请求时计算它,并在一个简单的循环中添加每个对象的链接: exports.list = function (req, res) { collection.find({}, {fields: {a: 1, b: 1, c: 1}, function (err, docs) { for (var i = 0; i < docs.length; i++) { docs[i].link = 'http://api.example.com/fooobject/' + docs[i]._id; } res.send(docs); }); }; 不过,我觉得这样做可能不是很好。 有没有更好的方法? 例如,直接告诉MongoDB做这样的计算? 还是甚至build议将完整的链接保存在数据库本身?

数字types错误与mongoose模型?

有500内部服务器错误,对于Error: TypeError: path must be a string 浏览器控制台指向ItemCtrl.js:35 console.log('Error: ' + data); 该错误的堆栈跟踪如下所示: TypeError:path必须是位于Function.where(/ Users / Name / Downloads / dev)的Query.where(/Users/Name/Downloads/dev/v16/node_modules/mongoose/lib/query.js:593:11) /v16/node_modules/mongoose/lib/model.js:1040:18)。 (/Users/Name/Downloads/dev/v16/app/models/item.js:44:35)… 看来这个错误是从/app/models/item.js中的一行中得到的,特别是在else if语句中。因为else if注释掉了, else if这两个都是可用的。 // load mongoose since we need it to define a schema and model var mongoose = require('mongoose'); var ItemSchema = mongoose.Schema({ title : String, position: Number }); […]

如何获取mongoose所有嵌套的文档对象

我是mongo DB的新手。 我正在开发一个使用MEAN堆栈的应用程序。 在我的后端,我有两个模型 – function和项目。 项目模式有一个叫做“特征”的属性,它是一个特征对象的数组。 var mongoose = require('mongoose'), Schema = mongoose.Schema; var ProjectSchema = new Schema({ name: { type: String, default: '', trim: true }, features:{ type: [Schema.ObjectId], ref: 'Feature' } }); /** * Statics */ ProjectSchema.statics.load = function(id, cb) { this.findOne({ _id: id }) .populate('features') .exec(cb); }; mongoose.model('Project', ProjectSchema); 请注意,我有function和项目模式的单独文件。 我将这两个模式注册为mongoose模型。 […]

NodeJS:dynamic表单

如何使用NodeJS,Express和Mongoose创builddynamic表单? 现在我的内容为了这个问题而被硬编码。 这是我的网页创build的样子: app.post('/create', function(req, res) { var page; var b = req.body; page = new Page({ title: b.title, url: '/' + Func.stringToUrlSlug(b.title) + '/', headline: b.headline, contents: [{ body: b.content1_body, class: 'CLASS1' },{ body: b.content2_body, class: 'CLASS2' },{ body: b.content3_body, class: 'CLASS3' }], border: b.border, target: b.target, hidden: b.hidden, externUrl: b.externUrl, order: 700 }); […]