mongoose踩坑记录
akino ... 2021-04-04 小于 1 分钟
在node.js项目中使用mongoose操作mongodb,然后就悲剧了,无论怎样查询结果都是null,弄了好几个小时也没有找到问题
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/hexo_admin', {
useNewUrlParser: true,
useUnifiedTopology: true
});
mongoose.set('useFindAndModify', false);
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error'));
var userSchema = mongoose.Schema({
username: String,
password: String
});
var Users = mongoose.model('users_admin', userSchema);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
然后查了很多资料,发现了一个骚操作,mongoose在创建model的时候会自动给表名加 ‘s’,但是mongodb不会,这就导致了mongoose查询的表名和我预期不一致,故一直查不到数据。
更改如下:
var Users = mongoose.model('users_admin', userSchema, users_admin);
1
无语死了。。。。