草庐IT

mongoose-populate

全部标签

javascript - 将 mongoose javascript 代码转换为 typescript。此引用丢失

我开始了学习typescript的新冒险。我拿了一个当然是用javascript编写的nodejs项目,我正在将它转换成typescript。我的想法是看到所有的好处并了解问题在哪里,我应该使用哪种模式等等。该项目使用带有mongoosejavascript库的mongodb数据库,我正在努力研究typescript如何转译代码。简单来说:我丢失了this引用。这是导致问题的好例子。varpersonSchema=newmongoose.Schema({created:{type:Date,default:Date.now},updated:{type:Date,},});person

node.js - 使用 mongoose 在 MongoDB 中批量插入多个集合

我有2个集合(data,metaData)data模式是{_id:......,name:......,//notuniquemobile:......,//uniqueornullemail:......,//uniqueornulluniqueId:......,//uniqueornull}插入至少需要一个唯一数据metaData架构是{_id:......,dataId:......,//refrencefrom_idofdatacollectionkey:......,value:......}JSON数组从客户端获取[{name:"abc",mobile:999999999

node.js - Mongoose 在没有模型的情况下填充嵌套模式

我试图在不为子模式创建模型的情况下填充嵌套模式,但没有成功。我有一个“问题”模型,它由2个模式(问题、选项)创建constOption=newmongoose.Schema({value:{type:String,required:true}})constQuestion=newmongoose.Schema({content:{type:String,required:true},options:[Option]})module.exports=mongoose.model('Question',Question)我有一个“评论”模型constReview=newmongoose.S

javascript - 使用 Mongoose 和 Node.JS 的 MongoDB 查询,使用大小写和重音正则表达式

我正在尝试在Node.JS中使用Mongoose编写MongoDB查询,以获取数据库中与特定名称匹配的所有名称。我希望查询忽略大小写和重音。我在互联网上四处寻找,但找不到执行此操作的查询。MongoDB查询支持正则表达式,所以这就是我想要做的。这就是我现在拥有的。它有效,但如果查询或查询的字符串有重音符号而另一个没有重音符号则不匹配。Passenger_record.find({$and:[{"FIRSTNAME":{$regex:req.query["firstname"],$options:'i'}},{"LASTNAME":{$regex:req.query["lastname"

mongodb - 无法在 Mongoose 中保存文档 - 所需的验证器因路径错误而失败

以下是我的架构:varuserSchema=newSchema({username:{type:String,required:true},password:{type:String,required:false}});现在,当我尝试保存上述模式的文档时,出现以下错误:{message:'Validationfailed',name:'ValidationError',errors:{username:{message:'Validator"required"failedforpathusername',name:'ValidatorError',path:'username',typ

node.js - 如何在 Mongoose 中为子文档设置 setter?

SubdocumentsMongoose中的(嵌入式文档)可以在如下模式中指定:varchildSchema=newSchema({name:'string'});varparentSchema=newSchema({children:[childSchema]});但是我如何指定setters在集合上并要求当类型是嵌入式模式时数组不为空?此代码将抛出嵌入式模式不是有效类型的错误:functionsomeSetter=function(val){//Dosomethingonsetreturnval;};varparentSchema=newSchema({children:[{typ

mongodb - 我可以使用 MongooseJS "populate"子文档数组中的属性吗?

关于mongoose的填充功能有很多SO问题,但我一直找不到证据证明这是否可行,如果可行,我做错了什么。假设我正在创建一个博客。耶。所有用户都可以撰写文章并对其他文章发表评论。我选择以这种方式建模:用户:varUserSchema=newSchema({name:String,email:{type:String,unique:true}});mongoose.model('User',UserSchema);带有嵌入式评论的文章:varArticleSchema=newSchema({title:{type:String},createdBy:{type:Schema.ObjectI

javascript - 使用 Mongoose 和 NodeJS 在 MapReduce 中添加更多字段

我有这个Mongoose模式varSessionSchema=mongoose.Schema({id:Number,cure:{type:mongoose.Schema.Types.ObjectId,ref:'Cure'},performances:Array,startDate:Date,endDate:Date,validatee:Boolean,deleted:Boolean});我需要知道有多少文档有不同的ID,但我只需要那些startDate大于给定日期(例如今天)的文档。运行以下代码工作正常,但我想在map中添加一些字段以在查询中使用它们。varo={};o.map=fun

javascript - 如何为 Mongoose 查询中返回的每个文档执行异步方法

我有一个mongoose模型架构,设置如下。varorderSchema=newSchema({_invoices:[{type:Schema.ObjectId,ref:'invoice'},_discounts:[{type:Schema.ObjectId,ref:'discount'},_client:String});orderSchema.methods.totalInvoiced=function(cb){this.populate('_invoices',function(err,order){cb(err,_.reduce(_.pluck(order._invoices,

node.js - Mongoose 填充为实例对象

当使用mongoose的populate时,您可以取回文档,但它不是定义模式方法的对象实例。vartweetSchema=newmongoose.Schema({owner:{type:Schema.Types.ObjectId,ref:'User'},message:{type:String},});varuserSchema=newmongoose.Schema({email:{type:String,unique:true,lowercase:true},});userSchema.methods.test=function(){return'test'}Tweet.findOn