mongoose连接collection后自动加s的问题

原创 2016年08月28日 23:58:30

这两天折腾mongoose,发现数据成功写入集合了,但是在Terminal查询的时候却查不到
于是show collections后发现在原来的集合底下,又生成了一个加了s的集合,shenmegui

查了一下,发现是mongoose.model()的问题

Mongoose#model(name, [schema], [collection], [skipInit])

在官方的api文档里面有解释(我不听)

When no collection argument is passed, Mongoose produces a collection name by passing the model name to the utils.toCollectionName method. This method pluralizes the name. If you don’t like this behavior, either pass a collection name or set your schemas collection name option.

当没有传入collection参数时,Mongoose会通过model name(就是第一个参数),调用utils.toCollectionName方法产生一个collection name,而这个方法会使name变成复数形式。如果你不想要这个过程,只要传入collection name参数或设置Schema中的collection name选项。

就像这样:

var schema = new Schema({ name: String }, { collection: 'actor' });

// or

schema.set('collection', 'actor');

// or

var collectionName = 'actor'
var M = mongoose.model('Actor', schema, collectionName);

什么坑爹设定…

参考

版权声明:本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。转载请注明来源http://blog.csdn.net/azureternite

相关文章推荐

Mongo+nodejs填坑系列——mongoose自动在collection结尾添加's'

最近在用nodejs和mongodb写个论坛,在这里记录下遇到的一些坑。 连接mongodb时使用的是mongoose模块,安装和使用方法如下: 安装: npm install mongoose --...

Android 获取ROOT权限原理解析

一、 概述 本文介绍了android中获取root权限的方法以及原理,让大家对android玩家中常说的“越狱”有一个更深层次的认识。 二、 Root的介绍 1.       Root 的目...

一句shell命令搞定代码行数统计

今天面试时,突然被面试官问到怎样用shell命令搞定某个文件夹下java代码行数的统计。 想了一下,基本思路就是找到这个文件夹下面的所有java文件,然后每个文件统计一下代码,外层套个for循环...
  • lc0817
  • lc0817
  • 2017年01月08日 19:42
  • 578

Mongoose操作schema时默认表名添加s以及解决

本文简单分析了Mongoose的创建schema时的collection的处理。

如何解决eclipse中修改后台代码ctrl+s时总是自动重启服务的问题

如何解决eclipse中修改后台代码ctrl+s时总是自动重启服务的问题

struts2中<s:url>中文自动编码问题

struts2中,如果使用,直接放进地址栏,如果有中文的话,会发生一个自动编码。那么我们在后台如何将这已经编码的数据解码出来呢?当然,说的是中文传输。 点击我 譬如上面的这段代码,点击链接,...

mongoose克隆对象的问题

mongoose克隆对象的问题mongoose克隆对象的问题 问题说明 研读mongoose源代码 经验教训 附录完整的测试用例@(技术笔记)[mongodb]问题说明通过mongoose进行克隆一个...

OWL-S Service Retrieval Test Collection v3.0

  • 2010年06月29日 00:38
  • 4.25MB
  • 下载

Better Understanding PHP’s Garbage Collection

It’s interesting how just a few years can make a difference in the names that are given to things. I...

<s:doubleselect 的使用-不支持EL表达式,需要使用OGNL来动态赋值-could not be resolved as a collection/array/map/enumerati

1、问题描述: 使用 struts2 设置级联下拉菜单,需要从后台数据库动态搜索下拉列表的选项,使用 class org.apache.jasper.JasperException:tag...
  • bestcxx
  • bestcxx
  • 2016年08月20日 11:18
  • 507
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:mongoose连接collection后自动加s的问题
举报原因:
原因补充:

(最多只允许输入30个字)