草庐IT

mongoose-dbref

全部标签

node.js - 在 mongo 中保存时,Mongoose 纬度和经度验证不起作用?

以下是我的位置收集架构:varLocationSchema=newSchema({street:{type:String,required:true},area:{type:String,required:true},city:{type:String,required:true},state:{type:String,required:true},zip:{type:String,required:true},country:{type:String,default:'IN'},pointers:{type:[],index:'2dsphere'}});当使用mongoose指针在m

node.js - 如何使用 $lookup 和 DbRef 连接 MongoDB 和 NodeJS 中的两个集合?

如果我有两个集合,其中一个有dbref,如何使用$lookup和dbref加入? 最佳答案 DBref是一个BSON对象,您不能使用它的值进行查找。但是,有一种方法可以将DBRef对象转换为数组。Ihavewrittenananswerafewmonthsagodescribinghowtodoit.简短说明假设您有这样的DBRef对象:myField:DBRef("otherCollection",ObjectId("582abcd85d2dfa67f44127e0")),像这样在myField上使用$objectToArrayd

javascript - mongoose 和 express.js 中的冲突日期

当我使用Date而不是String类型声明我的模式时,就会出现问题。案例一:varMySchema=newSchema({created_at:{type:String,default:''}});通过这个shema声明,我使用moment.jsmoment-timezone模块来声明亚洲/加尔各答时区的当前时间。vartmoment=require('moment-timezone');varcurrentTime=tmoment().tz('Asia/Kolkata').format('llll');而且我能够得到正确的时间。案例二:varMySchema=newSchema({c

node.js - 使用 mongoose 将 node.js 连接到 MongoDB 中的分片副本集群的正确方法

最近我们重新设计了我们的MongoDB数据库集群,除了我们已经实现的分片之外,还使用了SSL和副本集。SSL工作起来并不难,我们只需要拆分私钥和证书,然后一切正常。然而,事实证明,让我的Node.js应用程序连接到两个mongos实例比我预期的要困难。在我们实现副本集之前,我们只有两个分片,每个分片都运行一个mongos路由器,在mongoose中我给它以下连接字符串:mongodb://Host1:27017,Host2:27017/DatabaseName然后,在连接的选项对象中,我传入了以下内容:{mongos:true}这似乎工作得很好。但是,在实现副本集后,每当我通过mong

node.js - 无法访问 Typescript 中的 mongoose Schema 上下文

我正在尝试将.pre、.method和.static函数应用于我的Mongoose模式。我有以下代码,但我的this要么在错误的上下文中,要么我误解了Schemas。exportinterfaceIUserextendsmongoose.Document{email:string;password:string;firstName:string;lastName:string;comparePassword(password:string,callback:Function):void;}classUserSchema{staticgetschema():mongoose.Schema

node.js - 如何 Promise.all Mongoose 文档插入的多个数组

我正在尝试使用他们的Mongoose模型将文档插入到MongoDB中,我想使用promises。由于此数据源自MSSQL数据库,因此每个集合中的文档与其他集合中的文档具有外键关系。示例代码如下:constPromise=require('bluebird');constmongoose=require('mongoose');constMake=Promise.promisifyAll(require('../models/make-model'));constNameplate=Promise.promisifyAll(require('../models/nameplate-mod

javascript - 使用 Mongoose 获取新嵌入的文档

我用它来向页面添加嵌入式文档Page.findByIdAndUpdate(pageId,{$addToSet:{comments:{$each:comments}}},(err,page)=>{//...});当评论被添加到Page模型时,它们会自动获得一个id。我想在给这些新插入的评论赋予一个id之后返回它们。所以我想要类似的东西Page.findByIdAndUpdate(pageId,{$addToSet:{comments:{$each:comments}}},(err,page)=>{returnpage.newlyAddedComments();});我知道一种选择是在将I

node.js - Mongoose 不插入数据

我正在向我创建的API发送发布请求。发布请求发送一些数据以存储在我的本地数据库中。varLoc=require('../models/locationSchema');module.exports.locationsCreate=function(req,res){console.log(req.body.name);console.log(req.body.address);Loc.create({name:req.body.name,address:req.body.address,},function(err,data){console.log('insidecallback!'

javascript - 仅在满足特定条件时才使用 $in 运算符 - Mongoose

好吧,这可能只是我的愚蠢,没有正确查看MongoDB文档,但无论如何这是交易:我有一个RESTfulAPI路由,如下所示:GET/api/users?ids[]=id1&ids[]=id2它被解析成一个看起来像这样的对象:varparsedObject={ids:['id1','id2']}这会从查询字符串中返回具有指定ID的用户。现在,我希望这是可选的,这样这样的请求也可能有效:GET/api/users在mongoose中,为了找到具有指定ids的用户(如果有的话),我需要在查询时使用$in运算符,如下所示:UserSchema.find().where('_id').in(req

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