Tag: mongoose

MongoDB:输出'id'而不是'_id'

我正在使用mongoose(节点),什么是最好的方式来输出id而不是_id?

mongodb kerberos同伴依赖

尝试全局安装mongodb或mongoose会导致Kerberos缺less对等依赖关系 Jamess-MacBook-Pro:ka2 jamessherry$ npm install -g mongodb /usr/local/lib └─┬ mongodb@2.0.48 └── UNMET PEER DEPENDENCY kerberos@~0.0 npm WARN EPEERINVALID mongodb-core@1.2.21 requires a peer of kerberos@~0.0 but none was installed. Jamess-MacBook-Pro:ka2 jamessherry$ npm install -g mongodb – nan@2.0.9 node_modules/mongodb/node_modules/kerberos/node_modules/nan – kerberos@0.0.17 node_modules/mongodb/node_modules/kerberos /usr/local/lib └─┬ mongodb@2.0.48 └── UNMET PEER DEPENDENCY kerberos@~0.0 npm WARN EPEERINVALID mongodb-core@1.2.21 requires a peer […]

Mongoose“静态”方法与“实例”方法

我相信这个问题与这个问题类似,但是术语是不同的。 从Mongoose 4 文档 : 我们也可以定义我们自己的自定义文档实例方法。 // define a schema var animalSchema = new Schema({ name: String, type: String }); // assign a function to the "methods" object of our animalSchema animalSchema.methods.findSimilarTypes = function (cb) { return this.model('Animal').find({ type: this.type }, cb); } 现在我们所有的动物实例都有一个可用的findSimilarTypes方法。 接着: 向模型添加静态方法也很简单。 继续我们的animalSchema: // assign a function to the "statics" object […]

mongoose:模式与模型?

在看教程的时候,模式和模型之间经常会有划分,特别是在处理mongoose/蒙戈德(mongoose / mongodb)时。 这使得移植到postgresql有点混乱,因为“模型”似乎不存在于该系统下。 这两种方法有什么区别? 例如,什么是这个行的postgres / sql ORM等价物? (mongoose和express.js): var userSchema = schema.define('local', { username: String, password: String, }); module.exports = mongoose.model('User', userSchema);

mongoose – 创build文件,如果不存在,否则,更新 – 返回文件在任何情况下

我正在寻找一种方法来重构我的代码的一部分,以缩短和简化,但我不知道mongoose很好,我不知道如何继续。 我试图检查一个文档的存在集合,如果它不存在,创build它。 如果确实存在,我需要更新它。 无论哪种情况,我都需要访问文档的内容。 我迄今为止设法做的是查询特定文档的集合,如果找不到,则创build一个新文档。 如果发现,我更新它(目前使用date作为这个虚拟数据)。 从那里我可以访问从我最初的find操作find的文件或新保存的文件,这是可行的,但必须有更好的方式来完成我所追求的。 这是我的工作代码,无需分心。 var query = Model.find({ /* query */ }).lean().limit(1); // Find the document query.exec(function(error, result) { if (error) { throw error; } // If the document doesn't exist if (!result.length) { // Create a new one var model = new Model(); //use the defaults in the schema model.save(function(error) […]

mongoose的打字方式…?

试图在Typescript中实现一个Mongoose模型。 谷歌search只显示了混合的方法(结合JS和TS)。 如果没有JS,我会怎么去实现User类呢? 希望能够没有行李的IUserModel。 import {IUser} from './user.ts'; import {Document, Schema, Model} from 'mongoose'; // mixing in a couple of interfaces interface IUserDocument extends IUser, Document {} // mongoose, why oh why '[String]' // TODO: investigate out why mongoose needs its own data types let userSchema: Schema = new Schema({ userName : String, password : […]

MissingSchemaError:架构尚未注册模型“用户”

在我的models/user.js文件中: var mongoose = require('mongoose'); var Schema = mongoose.Schema; var userSchema = new Schema({ (define schema) }); … (save user) … (check password) … mongoose.model('User', userSchema); 而在我的router/index.js ,我有: var mongoose = require('mongoose'); var User = mongoose.model('User'); 这会引发错误: MissingSchemaError: Schema hasn't been registered for model "User". 但是,如果在user.js ,我(在最后一行) module.exports = mongoose.model('User', userSchema); 并在index.js我var User = require('../models/User'); […]

为什么当mongodb的好处被认为是无模式时,mongoose使用模式?

我是一个mongodb的超级新手。 我正在使用mongoose从node.js访问mongodb,并知道如何使事情发挥作用,但是我不认为我理解它为什么会像这样工作。 最重要的是,我不明白为什么mongoose具有“图式”,当mongodb的突出特点之一是它没有图式。 有人能教导我吗? 谢谢。

创build方法来更新和保存与mongoose的文件?

查看官方文档后 ,我仍然不确定如何创buildmongoose内部使用的方法来创build和更新文档。 那我该怎么做呢? 我有这样的想法: mySchema.statics.insertSomething = function insertSomething () { return this.insert(() ? }

mongoose:find,修改,保存

我有一个mongooseUser模型: var User = mongoose.model('Users', mongoose.Schema({ username: 'string', password: 'string', rights: 'string' }) ); 我想findUser模型的一个实例,修改它的属性,并保存更改。 这是我试过的(这是错的!): User.find({username: oldUsername}, function (err, user) { user.username = newUser.username; user.password = newUser.password; user.rights = newUser.rights; user.save(function (err) { if(err) { console.error('ERROR!'); } }); }); 什么是查找,修改和保存User模型的实例的语法?