草庐IT

Mongoose-auth

全部标签

node.js - 如何在 Mongoose 中推送数组

我想通过将数组推送到文档来更新数据,但是我在res.send(err)中遇到错误,这是我的代码:router.put('/update/:id',passport.authenticate('jwt',{session:false}),(req,res,next)=>{User.findById(req.params.id,function(err,user){if(err){console.log(err);returnres.status(500).send({message:"Error"});}if(!user){returnres.status(404).send({mess

javascript - 需要 Mongoose 模型并具有默认值

我用一个名为“phoneNumber”的字段创建了mongoose模型:...phoneNumber:{type:'String',required:true,default:''},...每当我创建该模型的新记录时,我都会收到验证失败异常:Path`phoneNumber`isrequired即使我设置了默认值,也会发生这种情况。哪里不对? 最佳答案 您正在将默认值设置为空字符串,而在JavaScript中,空字符串是一个falsy值。因此所需的检查失败,您会收到该验证消息。ReadmoreaboutFalsyvaluesat:h

mongodb - 处理 CRUD 应用程序中的重复值错误(react-redux + express-mongoose)

具有mongoose架构,其中carNumber应该是唯一的:varSchema=mongoose.Schema({createdAt:{type:Date,default:Date.now},carNumber:{type:String,index:{unique:true,dropDups:true},},carOwner:String});使用expresscontroller函数数据保存到db:exportconstaddCar=(req,res)=>{constnewCar=newCar(req.body);newCar.save((err,car)=>{if(err){re

javascript - 使用 Mongoose 模式导入 CSV

目前我需要将一个大型CSV文件推送到mongo数据库中,值的顺序需要确定数据库条目的键:示例CSV文件:9,1557,358,286,Mutantville,4368,2358026,,M,0,0,0,1,09,1557,359,147,Wroogny,4853,2356061,,D,0,0,0,1,0将其解析为数组的代码:varfs=require("fs");varcsv=require("fast-csv");fs.createReadStream("rank.txt").pipe(csv()).on("data",function(data){console.log(data)

node.js - Mongoose 一次插入多条相关记录

目前我有以下方法,一次可以有效地为每首歌插入一个歌词:SongSchema.statics.addLyric=function(songId,title,content){constLyric=mongoose.model('lyric');returnthis.findById(songId).then(song=>{constlyric=newLyric({title,content,song});song.lyrics.push(lyric);returnPromise.all([lyric.save(),song.save()]).then(([lyric,song])=>so

node.js - Mongoose 用条件填充子文档并更新它们

我在更新UserModel子文档时遇到问题,该子文档是(OfferModel)constuser=Schema({name:String,offers:[{type:mongoose.Schema.Types.ObjectId,ref:'Offer'}]});constoffer=Schema({title:String,post:{type:mongoose.Schema.Types.ObjectId,ref:'Post'},buyer:{deal:String,user:{type:mongoose.Schema.Types.ObjectId,ref:'User'}},seller

node.js - 更新用户信息 mongoose, MongoDB, NodeJS

我正在编辑个人资料页面,我想更改/更新我的mongooseDB中文档的信息,但我的代码没有更新文档。有什么建议吗?router.get('/edit',isAuthenticated,function(req,res,next){res.render('profile/editprofile',{user:req.user});});router.post('/edit',isAuthenticated,function(req,res,next){User.update({_id:req.session.passport.user.id},{email:req.body.email,

node.js - Mongoose :MongoError 没有地理搜索索引

我使用的是Mongoose5.1.5版,Mongodb3.0.10版当我使用mongooseModel.geoSearch方法时,它给我一个错误,说MongoError:NogeoSearchIndex下面是架构varhotelSchema=newmongoose.Schema({name:{type:String,required:true},stars:{type:Number,min:0,max:5,"default":0},services:[String],description:String,photos:[String],currency:String,reviews:[

node.js - 通过在 mongoose 中填充匹配结果来查找文档

对于Ecample,使用mongoose的数据:数据学生:[{"_id":ObjectId("5afbb519a7fe344ff8db67e6"),"name":"Jack","age":20...},{"_id":ObjectId("5afbb534a7fe344gf7db64e7"),"name":"Joni","age":20...}]数据事件:[{"_id":ObjectId("5afbb554a7fe344ff8db67e9"),"name":"GoingtoMarket","student":ObjectId("5afbb519a7fe344ff8db67e6")...},

javascript - 访问删除请求 Mongoose 返回的结果

我正在使用丰富事件集合中的ID删除一个EnrichedEvent。而且我还需要在项目集合中更新相同的内容。我能够实现这一点,但是一旦之后删除丰富的集合,当我再次尝试删除相同的id时,它的显示事件仅被删除。当我第一次删除事件时,它显示{n:1,Ok:1},如果我下次删除相同的ID,它会显示{n:0,Ok:1}这是正确的。但我想知道如何访问这些{n:X,OK:X}?这样我就可以写一个If条件说ifResult=={n:1}theneventremoved,否则事件id不存在。或者有没有其他方法可以实现这一目标,请指导我正确的方向。她的是我的代码。router.delete("/:proje