草庐IT

mongoose-plugins

全部标签

mongodb - Mongoose 查找结果,然后用 findOne 替换字段

我是mongodb的新手,来自关系数据库,没有加入,继续使用mongodb对我来说是一种痛苦。我想在此处存档的是获取所有项目并使用正确的项目类型名称而不是项目类型ID更新projectType。不知何故projects.attrubtes无法被覆盖。然后我尝试了以下帖子。没有运气。任何帮助表示赞赏。任何人都可以给我一些指导,将不胜感激。Whycan'tyoumodifythedatareturnedbyaMongooseQuery(ex:findById)var_=require('lodash');varproject=require('./project.model');varFo

node.js - mongoose如何防止已有用户名的用户修改用户名

我有一个身份验证系统,用户可以使用username/password来signup,或者使用facebooksignin提供者/providerId我想防止更改用户名,但如果他们使用facebook,我允许他们设置一次username。是否可以在user模型中实现它?这是我当前的实现。//usernamecheckuniqueUserSchema.pre('save',true,function(next,done){varself=this//incaseinsideacallback//snsprovider,OKnottohaveusernameif(self.provider&

javascript - Mongoose 'or' 和 'like' 运营商 node.js

我想为我的页面实现搜索。所以从前端我从用户输入中获得了搜索值,我需要在我的数据库中搜索3行限制。所以我需要这样的sql查询:SELECT*FROMPRODUCTSpWHEREp.titlelike'%user_value%'或p.skulike'%user_value%'我试着这样做:router.get('/search',function(req,res,next){varvalue=req.query.val;varquery=Product.find({"title":newRegExp('/'+value+'/')}).limit(3);query.exec(function

node.js - bool 字段的 Mongoose 查询

要查询bool字段,我必须使用“false”而不是false。我将Mongoose与NodeJS结合使用。Mongodb模式定义:varMySchema=newmongoose.Schema({isPrivate:{type:Boolean,default:false}})db.model('MyModel',MySchema);查询:MyModel.find({isPrivate:false})上面的查询不返回任何数据集,而下面的代码返回。MyModel.find({isPrivate:"false"})请帮忙。 最佳答案 根据您

mongodb - 在 Mongoose 中用 $ 和两个参数查询?

我有一个这样的用户模型:user:{myArmy:{mySoldiers:[{positioned:false,soldierInfo:{_id:s99212}},{positioned:true,soldierInfo:{_id:s99112}}]}},user:{myArmy:{mySoldiers:[{positioned:true,soldierInfo:{_id:s99212}},{positioned:false,soldierInfo:{_id:s99112}}]}}...我有一个查询要执行以返回定位有士兵IDs99212的用户(真):(可能有数千个,我需要读取并检索它们

node.js - Mongoose Schema.update 不更新 bool 值

我已经尝试更新其他字段并且它工作得很好。我在API中使用的命令:User.update({email:targetUser.email},{$set:{isAdmin:true},$push:{'log.updated':newDate()}},function(err,user){if(err){responseObject.err=err;responseObject.data=null;responseObject.code=422;returnres.json(responseObject);}returnres.json(responseObject);});澄清一下,当我尝

node.js - 在 Mongoose 预保存 Hook 中获取模型/集合的名称

我正在创建一个Mongoose预保存Hook,我想知道我保存在预保存Hook中的模型/集合的名称。我可以从哪个变量中获取它。module.exports=exports=functionlastModifiedPlugin(schema,options){schema.pre('save',function(next){varself=this;self.constructor.findOne({_id:self._id},function(err,launch){console.log("model"+self.mongooseCollection);console.log(Obje

javascript - Mongoose 不保存数据

我在对我的数据库进行简单查询时遇到问题。按照本教程进行操作:https://scotch.io/tutorials/build-a-restful-api-using-node-and-express-4当调用Model.find()时,他会收到一个返回的JSON对象,其中包含名称字段(唯一的自定义字段)以及_id和__v。当我这样做时,我收到的只是_id和__v字段。我确实收到了成功的回复,说帖子已创建,但它不包含标题或内容字段。然而查询显示数据从未保存。路由和查询:varexpress=require("express");varrouter=express.Router();va

当超过 100 个结果时,Node.js + mongoose find 卡住 Node

我有一个简单的mongoose模型,我在该模型上调用find,最大限制为100,它调用done回调:this.find({}).limit(100).exec(done);如果我将此行修改为(或任何更高的数字),则永远不会调用回调this.find({}).limit(101).exec(done);任何地方都没有错误,数据库继续工作,但是这个Node应用程序卡住,必须重新启动。如果我通过ssh进入服务器以连接到同一个数据库并连接到mongoshell,在同一个集合上,find({})会在不到一秒的时间内返回所有约700个集合。当我将同一个数据库克隆到我的本地PC并运行该应用程序以连接

javascript - Mongoose - 子架构引用父子文档

是否有可能具有类似于以下内容的MongooseSchema:varcategorySchema=newSchema({name:String});varchildSchema=newSchema({name:String,category:{type:Schema.Types.ObjectId,ref:'parent.categories'}});varparentSchema=newSchema({categories:[categorySchema],children:[childSchema]});基本上,一个child只能拥有一个由其parent包含的类别。我正在尝试做的事情可