zoukankan      html  css  js  c++  java
  • mongoosejs model mapping to collection name

    mongoosejs 是一个对象模型工具,将mongodb的collection中的Document映射为Model

    典型用法如下

    var mongoose = require('mongoose');
    var Schema = mongoose.Schema;
    
    var analysisSchema = new Schema({
    	"method": String,
    	"name": String,
    	"scenario": Schema.Types.Mixed,
    	"tree_id": String
    });
    
    var analysisModel = mongoose.model('Analysis', analysisSchema);
    

    那么mongoosejs的model名字和mongodb中的collection名字是如何对应的呢 ?

    参见代码 node_modules/mongoose/lib/utils.js 中的 toCollectionName 方法

    默认情况下: mongoosejs options的 pluralization 为 true, 这个时候
    mongoosejs 将使用 utils 中的 pluralize 方法 将 model名转化为 collection名

    pluralization 为 false 的时候,collection的名字将和model名字相同

    pluralize 转换规则特别神奇,主要有转换为小写, 名词是否可数,单复数形式等, 采用了正则等检测方法.
    比如 上面例子的 Analysis 对应的 collection名字为 analyses

  • 相关阅读:
    使用ANY、Some或All关键字
    Exists 和 Not Exists
    in和not in
    斐波那契数列 迭代与递归效率对比
    欧几里得算法
    递归
    字符长串破解密码
    对return函数的认识
    global与nonlocal关键字总结
    闭包
  • 原文地址:https://www.cnblogs.com/i2u9/p/mongoosejs-modelmapping.html
Copyright © 2011-2022 走看看