草庐IT

node.js - Mongoose:如何在填充期间排除虚拟 id 字段

我试图排除Mongoose设置的虚拟id字段。varBar=newSchema({body:String});varFoo=newSchema({bars:type:Schema.Types.ObjectId,ref:'Bar'});Foo.find({..query...}).populate('bars','body-_id').exec(function(err,foos){console.log(foos);//{bars:[{id:null,body:'bodystring'}]}});如何删除“id”字段?因为我在填充中排除了_id,它还是null吗?

mongodb - 为什么 MongoDB 在使用自定义 id 值插入时将 _id 增加一个

插入具有自定义_id值的新文档时,我遇到了一些奇怪的问题。如果我插入自定义_id为1020716632230383的文档,它会在数据库中保存为1020716632230384。由于某种原因,它增加了1。这可能是什么原因造成的?我的查询是:exports.register=function(req,res){console.log('ATTEMPTtoregisterauserwithid:'+req.body.userInfo.id);//prints1020716632230383!!!varquery={'_id':req.body.userInfo.id};varupdate={

mongodb - 日期查询适用于 _id 但不适用于日期值 - MongoDB

所以,我几个小时以来一直在尝试这个,但没有得到任何结果。我有一个MongoDB集合,它有一个日期值"scrape_systemTime",我用scrape_systemTime:newDate()插入它。我试图通过使用以下方式获得比一周前的结果:db.scrape.find({scrape_systemTime:{$lt:newDate(Date.now()-86400000*7)}})它应该返回一组看起来像下面对象的文档,但它什么也不返回。(查看“scrape_systemTime”属性,它有一周前的日期。)[{"newspaperID":"6","scrape_systemTime

mongodb - 获取错误 : List id must be an object after adding schema to todos example in Meteor

Meteor的待办事项示例运行良好。但是,当我将模式添加到Todos和Lists集合时,我不断收到“错误:Listid必须是一个对象”。任何帮助将不胜感激。添加了:meteor添加aldeed:simple-schemameteor添加aldeed:collection2这是添加到collections.js文件的新模式:Lists=newMongo.Collection('lists');varSchema={};Schema.Lists=newSimpleSchema({name:{type:String},incompleteCount:{type:Number}});Lists

node.js - Mongoose 通过id方法删除子文档

我有两个模型:varmongoose=require('mongoose');varSchema=mongoose.Schema;varProjectSchema=newSchema({title:{type:String},images:[{type:Schema.Types.ObjectId,ref:'Image'}]});module.exports=mongoose.model('Project',ProjectSchema);和varmongoose=require('mongoose');varSchema=mongoose.Schema;varImageSchema=ne

java - 如何使用 _id 字段从 mongodb 中获取记录并使用 java 在控制台中显示获取的记录

我正在尝试使用“_id”字段从mongodb检索记录。但是我得到的输出是null。我的代码:MongoClientmongo=newMongoClient("localhost",27017);DBdb=mongo.getDB("sample");DBCollectioncol=db.getCollection("matching");BasicDBObjectquery=newBasicDBObject();query.put("_id",newObjectId("56cec592fe3fc16f6b564761"));DBObjectdbObj=col.findOne(query)

Node.js JWT,从token获取user_id

strongtext我正在构建node.js+mongodbrestapi。我使用jwt用户身份验证,但遇到问题。我需要获取经过身份验证的用户(user_id,名称)的详细信息,认为可以从token中获取它们,但我不知道该怎么做。这怎么可能?已更新我正在做一个post请求router.route('/articles').post(function(req,res){vararticle=newArticle();article.user_id=???;//hereneedsuser_idarticle.imdb_id=req.body.imdb_id;article.title=re

javascript - 在 MongoDB 中更新具有不同 ID 的多个文档

现在我正在更新多个子文档varpositions=[{id:'1',position:{x:0,y:0}},...];positions.forEach(element=>{Model.findOneAndUpdate({_id:modelId,'elements._id':element.id},{$set:{'elements.$.position':element.position}});});但是否可以只调用一次数据库?编辑例如,我可以做Model.findById(modelId).then(model=>{positions.forEach(element=>{constd

node.js - 当我创建一个带有引用另一个 Mongoose 对象的位置的模式时,如何防止 Mongoose 创建 id?

这不是重复问题,因为我“重复”的问题是关于从子化学中删除ID。在这里,我想防止mongoose使用referencenothing的ID填充我日历中的时间。它只是应该存储带有类(class)ID的类(class)。我正在尝试制作一个包含周、日和小时的日历,其中每个小时都应该能够引用一个类(class)。这是我的日历架构:varmongoose=require("mongoose");varcalendarSchema=newmongoose.Schema({owner:{type:mongoose.Schema.Types.ObjectId,ref:"User"},weeks:[{nu

mongodb - 从带有转换对象 ID 的 mongodb 导出到字符串

我想从mongodb中导出,导出时objectId将被转换为字符串。ObjectId("507c7f79bcf86cd7994f6c0e").toString()这不适用于导出命令。我尝试了以下但显示语法错误。./mongoexport--hostlocalhost--dbDatabase--collectioncollection_name--type=csv--outcollection.csv--fields_id.toString()我该怎么做? 最佳答案 我认为您无法通过单个命令完成此操作,但在运行导出后,您可以使用sed