刚接触mongodb,在使用mongoose写Node example时,遇到的一些坑,记下来

我直接在命令行写入一条数据,然后按照文档说明操作查询数据,发现始终查询不出数据,几经调试发现是collection name的原因。

mongoose在执行操作时会把collection name变成复数形式

1
2
// 这样定的的model在执行数据库操作时,会以name为users作为coll name,在测试时,如果直接用命令行插入数据,切记使用 db.users.insert || db.users.save
mongoose.model('User', UserSchema);

顺便记一下mongodb的一些常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// 直接使用此命令,查看mongodb支持哪些命令
help
// 查询当前数据库支持哪些方法、
db.help()
// 查看users表collection支持哪些方法
db.users.help()
// 查询所有数据库列表
show dbs
// 查看当前在那个数据库下
db
// 切换到test数据库下
use test
// 查看当前数据库下有哪些表(collection)
show collections