草庐IT

Mongoose-auth

全部标签

node.js - 如何在 mongoose + express 的模式上使用方法

当我尝试从exports.index.post运行user.comparePassword时出现以下错误(见下文)——我粘贴了所有代码以帮助缩小问题范围。UserSchema.pre('save')方法工作正常,但不是./routes/account.js中的方法(我使用的是mongoose3)这是我得到的错误。Caughtexception:[TypeError:Object{username:'test4',email:'test4@test.com',password:'$2a$10$Ix5vCuVYGIU7AmXglmfIxOyYnF6CiPJfw9HLSAGcRDxMJEtt

mongodb - Mongoose 文档更新错误

最近一直在使用node和mongoose,我很喜欢它,直到我不得不更新一个模型。这是我正在做的:module.exports.update=(post,cb)->Post.update_id:post._id,post,(err,data)->cb(err,data)所以我认为保存新帖子会很容易,但它在提示有错误:err:'Modon_idnotallowed'在将post._id传递给我的更新方法之前,我尝试删除它,但它没有用,我找不到任何关于如何做的好例子,除了一个看起来有点奇怪,首先你通过_id找到Post,然后更新每个键手动保存Post回来...有什么建议吗?

带有servicestack的Mongodb auth抛出缺少方法异常

我刚刚将ServiceStack配置为使用Mongodb在本地进行身份验证publicoverridevoidConfigure(Containercontainer){Plugins.Add(newAuthFeature(()=>newAuthUserSession(),newIAuthProvider[]{newBasicAuthProvider(),}));varmongoClient=newMongoClient("mongodb://localhost");varserver=mongoClient.GetServer();vardb=server.GetDatabase("

mongodb - 使用 Mongoose 执行非 '$set' 更新

Mongoose文档指出任何模型更新都是使用“$set”自动发送的:varquery={name:'borne'};Model.update(query,{name:'jasonborne'},options,callback)//issentasModel.update(query,{$set:{name:'jasonborne'}},options,callback)但我想执行传统的Mongo更新,实际上,重置具有提供的值的文档。但我似乎无法找到使用Mongoose执行此操作的任何简单方法。有任何想法吗? 最佳答案 您可以使用n

node.js - Mongoose 类型错误 : Cannot use 'in' operator to search for '_id' in [object Object]

我是mongodb的新手,在过去的几天里,我一直在尝试将我的条目输入到我的mongolab实例中,但没有任何运气。似乎当我执行保存调用时,我收到一条错误消息:TypeError:无法使用“in”运算符在[objectObject]中搜索“_id”他们指的[objectObject]是我的颜色模式。我还没有找到答案,我想我会在研究更多的同时在这里发帖并行工作。我粘贴了一段我正在使用的内容,希望这只是我在做的一些愚蠢的事情。TIA!mongoose.connect(config.db.mongodb);varSchema=mongoose.Schema,ObjectId=Schema.Ob

node.js - 无法使用 Mongoose 在 NodeJS 中使用 $ 或查询

我有一个NodeJS应用程序,它有一个函数,它接受一个id并从我的MongoDB数据库返回一个与所述id相对应的对象。id可以匹配到我模型中的_id(ObjectID)或external_id(字符串),为什么我要过滤掉id等于_id或等于external_id的对象。我写了这段代码,但是当我在NodeJS中运行它时它似乎不起作用,但是如果我在终端的mongo中尝试它它工作正常:myModel.findOne({$or:[{_id:my_id},{external_id:my_id}]},function(err,model){...});由于它在终端中工作,我猜这两个模型对象的不同类

mongodb - Node、MongoDB、Mongoose 设计选择——创建两个集合或一个集合

我正在为我的应用程序的mongo集合和mongoose模式的大量设计选择而苦苦挣扎。我的应用程序需要两种帐户类型:学生和教师。这两种帐户类型之间的唯一相似之处在于它们都需要以下字段:名字、姓氏、电子邮件和密码。除此之外,它们是不同的(老师有“作业”、“测试”,学生有“作业”等)我仔细考虑了我的选择,并考虑了以下设计选择:使用mongoose-schema-extend,并为所有帐户。然后,扩展此模式以创建Teacher和学生模式。这意味着两个集合,因此一些冗余字段。登录和创建帐户也存在问题(检查用于登录的电子邮件是学生电子邮件还是教师电子邮件等)创建一个集合“accounts”,并添加

node.js - 通过任意排序跳过和限制 Mongoose 分页的替代方法

首先让我说一下,我读过(MongoDB-paging)使用skip和limit进行分页对性能不利,最好按dateCreated之类的东西排序并修改查询对于每一页。在我的例子中,我让用户指定参数来排序。有些可能是按字母顺序排列的。为这种类型的任意排序指定查询似乎相当困难。是否有一种性能友好的方式来进行任意排序的分页?例子mongoose.model('myModel').find({...}).sort(req.sort)...次要问题:我需要在多大程度上担心这个问题? 最佳答案 我认为你做不到。但在我看来,最好的方法是根据您的req

node.js - Mongoose model.save() 在更新时不持久保存到数据库

我正在开发一个mongoose/node.js/express应用程序。在我的route,我使用express'app.param()将我的模型实例放入请求中的方法-而不是在每个Controller操作中获取它。我在我的Controller中得到了show和create操作-但是我无法实现update操作。这是我的相关Controller代码://mymodel-controller.jsvarmongoose=require('mongoose')varMyModel=mongoose.model('MyModel');varutils=require('../../lib/util

node.js - 我如何根据现有的 Mongoose 查询检查单个文档?

我有一个Mongoose查询保存在一个变量中,然后我有一个相同集合的随机Mongoose文档,该查询是打开的。我想知道我的文档是否与查询匹配。我知道我可以对集合运行查询,然后查看结果集是否包含该文档,但我想节省一些性能并仅在一个文档上运行它。这可能吗?如果是,那又如何? 最佳答案 虽然可以进行本地查询,但如果无法进行本地查询,我建议您考虑执行以下操作:Example.findOne(existingQuery).where('id').equals(compareTo.id).select('id').exec(function(e