草庐IT

mongoose-orm

全部标签

node.js - Mongoose 中的 Date.now() 和 Date.now 有什么区别?

我在Mongoose模型中使用Date.now()和Date.now。我对它们之间的区别有点困惑。你能帮帮我吗? 最佳答案 我知道这是一个老问题,但接受的答案并没有正确解释差异。它解释了行为上的差异,但没有解释它实际上是如何工作的。在您的mongoose架构,您的default可以是指定类型的值,也可以是返回指定类型值的函数。Date.now是一个内置的Javascript函数,它以数字形式返回当前的unix时间戳。如果您通过Date.now作为default在您的mongoose架构,您正在传递函数和mongoose每次文档需要该

node.js - 如何在 Mongoose 中间件中发出事件?

我想在保存新博客时发出事件blog.post('save',function(blog){this.emit('newBlog',blog)})在我项目的其他地方说app.js可以监听这个事件EventEmitter=require('events').EventEmitter;emitter=newEventEmitter();emitter.on('newBlog',function(blog){console.log(blog);})如何做到这一点? 最佳答案 事件发射器的工作方式是您必须使用same事件发射器对象来监听您曾经

javascript - 为什么我的架构不在 Mongoose 数组中添加默认值?

我有这样的架构:varCustomUserSchema=newSchema({role:[],permissions:[],});permissions字段存储一个字符串数组,如下所示:["Delete","Show","Create"]而role字段存储一个对象数组,如下所示:[{name:"admin",priority:10,permissions:["Delete","Show","update"]},{name:"user",priority:5,permissions:["Delete","Show"]}]现在,我的要求是能够将“显示”存储为架构中permissions字段

javascript - 为什么我的架构不在 Mongoose 数组中添加默认值?

我有这样的架构:varCustomUserSchema=newSchema({role:[],permissions:[],});permissions字段存储一个字符串数组,如下所示:["Delete","Show","Create"]而role字段存储一个对象数组,如下所示:[{name:"admin",priority:10,permissions:["Delete","Show","update"]},{name:"user",priority:5,permissions:["Delete","Show"]}]现在,我的要求是能够将“显示”存储为架构中permissions字段

遵循数据映射器模式的 Javascript node.js ORM

我一直在使用ORM的事件记录和数据映射器实现,足以了解在我的大型项目中使用事件记录实现的ORM的问题。现在我正在考虑将我的一个项目迁移到node.js并尝试找到我现在使用的类似工具。经过研究,我没有发现任何遵循数据映射器模式的node.jsORM。他们都是活跃的记录。也许我遗漏了一些东西,你可以告诉我是否有一个很好的流行的node.js的ORM,它不遵循事件记录模式?我看过的图书馆:http://docs.sequelizejs.com/https://github.com/dresende/node-orm2http://bookshelfjs.org/其他一些

javascript - 在 Mongoose 中加载后更改模型值

在我的Mongoose模型中,我有一些依赖于时间的stats。我的想法是添加middleware在加载模型后立即更改这些统计信息。不幸的是,post-Hooks上的文档有点不够清晰。看来我可以使用这样的钩子(Hook):schema.post('init',function(doc){doc.foo='bar';returndoc;});他们唯一的例子涉及console.log-输出。它没有以任何方式解释是否必须返回doc或post-Hook中的更改是否根本不可能(因为它不是异步的,复杂的想法可能几乎没有用处).如果'init'上的pre不是在加载时自动更新模型的正确方法,那么什么是?

node.js - Mongoose 填充不起作用

您好,我有这个Schema(称为schema.js):varmongoose=require('mongoose'),Schema=mongoose.Schema;varRoomSchema=newSchema({name:{type:String,required:true,index:{unique:true}},people:{type:Number,required:true},childrens:{type:Number,required:true},total:{type:Number,required:true}});varRoom=mongoose.model('Roo

javascript - 查询中不等于的 Waterline ORM (sails.js) 条件

如何在Waterline中编写NOTEqual条件?这段代码:Users.count().where({id:{'!=':req.params.id},lastname:req.body.lastname})什么都不做...(sails.js中的磁盘适配器) 最佳答案 首先,它什么都不做,因为查看数据库是异步的。您必须使链更长,然后添加exec或Q库中的其他内容。User.count().where({id:{'!=':req.params.id},lastname:req.body.lastname}).exec(function

javascript - 从 JSON 格式的 'description' 动态定义 Mongoose 模式

我正在制作一个网络应用程序,它允许用户通过首先在客户端表单中“注册”模式来在我的服务器上创建自己的自定义MongoDB集合。所以用户将创建一个模式客户端-比如说使用这样的表单:http://r.github.com/annotationsformatter/所以客户端Js会生成表单的JSON对象,例如:{"collection_name":"person","data":{"name":"String","email":"String","id","Number",}}接下来,页面会将这个对象发送到服务器,服务器应该将data中的内容转换为适当的MongooseSchema并从中创建一

javascript - 从 JSON 格式的 'description' 动态定义 Mongoose 模式

我正在制作一个网络应用程序,它允许用户通过首先在客户端表单中“注册”模式来在我的服务器上创建自己的自定义MongoDB集合。所以用户将创建一个模式客户端-比如说使用这样的表单:http://r.github.com/annotationsformatter/所以客户端Js会生成表单的JSON对象,例如:{"collection_name":"person","data":{"name":"String","email":"String","id","Number",}}接下来,页面会将这个对象发送到服务器,服务器应该将data中的内容转换为适当的MongooseSchema并从中创建一