草庐IT

Node-red

全部标签

node.js - Mongoose 类型错误 : Cannot use 'in' operator to search for '_id' in [object Object]

我是mongodb的新手,在过去的几天里,我一直在尝试将我的条目输入到我的mongolab实例中,但没有任何运气。似乎当我执行保存调用时,我收到一条错误消息:TypeError:无法使用“in”运算符在[objectObject]中搜索“_id”他们指的[objectObject]是我的颜色模式。我还没有找到答案,我想我会在研究更多的同时在这里发帖并行工作。我粘贴了一段我正在使用的内容,希望这只是我在做的一些愚蠢的事情。TIA!mongoose.connect(config.db.mongodb);varSchema=mongoose.Schema,ObjectId=Schema.Ob

node.js - GridFS:清除所有未引用的文件

我刚刚开始将内容存储在我的GridFS中的MongoDB中。在测试期间,我注意到许多文件正在创建但未正确删除。我有一个集合users,它有一个字段avatar。它包含文件的ObjectId。现在我想要一些命令,我​​可以用它来删除那里没有引用的所有files和chunks。是否可以通过一个查询来做到这一点?也许是“map-reduce”?此外,我不确定如何正确删除node-mongodb-native中的GridFS文件。 最佳答案 ?现在我想要一些命令,我​​可以用它来删除那里没有引用的所有文件和block。此处的关键术语是“引用

node.js - 如何处理 Angular.js 中的嵌套数据选择表单?

我有一个node.js应用程序,其中的表单有一个选择器。该应用程序通过mongoose从mongodb加载数据并填充嵌套引用对象。所以我的数据看起来像:{"__v":0,"_id":ObjectId("51199c96c13e06ae33000001"),"consortium":{_id:'510f234198e6c75a3a1b43eb',imageURLsm:'/asdf.jpg',name:'COOLNAME'},"description":"MyDescription","gdp":1234,"imageURL":"http://foo.com","location":"ht

javascript - 从 Node.js 向 MongoDB 插入文件时出错

我正在尝试从node.js连接到mongoDB并将文件(“函数”)上传到MongoDB。有人可以验证我的代码有什么问题吗。当我运行js文件时,出现以下错误:错误:找不到模块“mongodb”在Function.Module._resolveFilename(module.js:338:15)在Function.Module._load(module.js:280:25)代码如下:varmongodb=require('mongodb');varurl=require('url');varlog=console.log;varcurrentTimeStamp=newDate();varf

node.js - 无法使用 Mongoose 在 NodeJS 中使用 $ 或查询

我有一个NodeJS应用程序,它有一个函数,它接受一个id并从我的MongoDB数据库返回一个与所述id相对应的对象。id可以匹配到我模型中的_id(ObjectID)或external_id(字符串),为什么我要过滤掉id等于_id或等于external_id的对象。我写了这段代码,但是当我在NodeJS中运行它时它似乎不起作用,但是如果我在终端的mongo中尝试它它工作正常:myModel.findOne({$or:[{_id:my_id},{external_id:my_id}]},function(err,model){...});由于它在终端中工作,我猜这两个模型对象的不同类

javascript - 动态更改 MongoDB ReplicaSet 中的 Node

我在javascript中使用mongodb及其native驱动程序。您通过指定集合中的Node连接到副本集:varmainReplSet=newMongoDB.ReplSet([newMongoDB.Server('0.0.0.0,27017,{auto_reconnect:true}),newMongoDB.Server('0.0.0.0',27017,{auto_reconnect:true}),newMongoDB.Server('0.0.0.0',27017,{auto_reconnect:true})],{rs_name:'ReplicaSetName',readPrefe

node.js - 按子文档拆分文档

我现在遇到一个问题,找不到解决方案。我在每个文档的数组中有一个包含子文档的集合,我想为每个子文档检索一个文档。举个例子就更容易解释了。假设我有一个集合的这个“模式”:{a:String,b:[String]}其中a和b都是必需的。该集合的文档如下所示:{a:'hey',b:['me','you']}我想找到一种方法来进行mongoose查询,该查询不会按原样返回该文档,而是返回这两个文档:[{a:'hey',b:'me'},{a:'hey',b:'you'}]这可能吗?提前致谢。附言:我知道一旦我用一个简单的JS函数检索到列表我就可以做到这一点,但我迫不及待地想检索到完整列表并开始使用

mongodb - Node、MongoDB、Mongoose 设计选择——创建两个集合或一个集合

我正在为我的应用程序的mongo集合和mongoose模式的大量设计选择而苦苦挣扎。我的应用程序需要两种帐户类型:学生和教师。这两种帐户类型之间的唯一相似之处在于它们都需要以下字段:名字、姓氏、电子邮件和密码。除此之外,它们是不同的(老师有“作业”、“测试”,学生有“作业”等)我仔细考虑了我的选择,并考虑了以下设计选择:使用mongoose-schema-extend,并为所有帐户。然后,扩展此模式以创建Teacher和学生模式。这意味着两个集合,因此一些冗余字段。登录和创建帐户也存在问题(检查用于登录的电子邮件是学生电子邮件还是教师电子邮件等)创建一个集合“accounts”,并添加

node.js - 通过任意排序跳过和限制 Mongoose 分页的替代方法

首先让我说一下,我读过(MongoDB-paging)使用skip和limit进行分页对性能不利,最好按dateCreated之类的东西排序并修改查询对于每一页。在我的例子中,我让用户指定参数来排序。有些可能是按字母顺序排列的。为这种类型的任意排序指定查询似乎相当困难。是否有一种性能友好的方式来进行任意排序的分页?例子mongoose.model('myModel').find({...}).sort(req.sort)...次要问题:我需要在多大程度上担心这个问题? 最佳答案 我认为你做不到。但在我看来,最好的方法是根据您的req

node.js - 完成 Mongo 写入后 Node csv 调用挂起

我正在使用Node加载CSV文件,然后将其写入MongoDB数据库。它实际上在工作,但脚本没有退出!这是核心:functioncommute_process(csvstr,col_commute){csv().from(csvstr,{columns:true}).transform(function(row){//unimportantstuffreturnrow;}).on('record',function(row){cleanedrow=//unimportantconsole.log(cleanedrow);col_commute.insert(cleanedrow,{w:1