内容简介:最近研究api设计,顺便研究了下mongodb,教程没有仔细看过,所以使用过程中也遇到了一些诡异的现象。比如我使用中发现,我创建的模型名称,在对应数据库的collections内的名称不一致。我很纳闷,比如我创建的如下:当我将一条数据写入后,用工具Robo 3T发现,名称居然变成了people。
最近研究api设计,顺便研究了下mongodb,教程没有仔细看过,所以使用过程中也遇到了一些诡异的现象。
比如我使用中发现,我创建的模型名称,在对应数据库的collections内的名称不一致。我很纳闷,比如我创建的如下:
const PersonModel = Mongoose.model("person", {
firstname: String,
lastname: String
});
当我将一条数据写入后,用工具Robo 3T发现,名称居然变成了people。
后来查了相关资料,原来 mongodb 有自己的一套规则,详细的规则,比如我这条: mongoose/lib/utils.js 。当然这个是历史版本的例子了。关于这个现象,最新 文档 中也指出:
The first argument is the singular name of the collection your model is for. Mongoose automatically looks for the plural version of your model name. For example, if you use
const MyModel = mongoose.model('Ticket', mySchema);
Then Mongoose will create the model for your tickets collection, not your ticket collection.
一般情况他会创建一个复数的model,这种person算特殊的了。所以你写得model不一定在查询的时候会一样,即便不一样也不要惊讶哦~
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 根据 PID 获取 K8S Pod名称 - 反之 POD名称 获取 PID
- 设定新的进程名称
- 国际化语种名称的标识
- Java中的不合格名称
- OpenGL入门第一课--名称解释
- Reface.NPI 方法名称解析规则详解
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
软件预构艺术(中文版)
Ken Pugh / O'Reilly Taiwan公司 / 东南大学 / 2010-6 / 26.00元
利用经验累积而得到的洞察力开发新的解决方案被称为预构。透过重构而获得的专业知识也属于这类经验,而预构的词源即重构。重构是修改程序或软件系统内部结构的实践,以此在保留其现有行为的基础上改良设计。重构的原因有多种:方便后期增加功能、提高可维护性、提升性能。 本书作者是经验老道的软件开发人员。书中,作者运用他个人和其他众多开发人员的丰富经验,展示由其推衍而得的各项实践方针。这些方针把优秀的开发人员......一起来看看 《软件预构艺术(中文版)》 这本书的介绍吧!