mongodb – find()不是一个函数
我想打印“会员”收集的所有文件。 我使用find()
函数,但它抛出错误: find() is not a function
。
在member_model.js(在models / admin文件夹中):
var mongoose = require('mongoose'); var Schema = mongoose.Schema; var MemberSchema = new Schema({ username: String, password: String }); module.exports = mongoose.model('members', MemberSchema);
在index.js(在controllers / admin文件夹中):
const members = require('../../models/admin/member_model'); var Members = new members(); Members.find({}, function (err, resDB) { assert.equal(err,null); console.log(json(resDB)); });
我检查连接到数据库,它仍然没问题。 我还读了一些其他的问题,但我的问题的任何合适的答案。
请注意更多我testing像这样:
在auth.js(在controllers / admin文件夹中):
const members = require('../../models/admin/member_model'); var Members = new members(); Members.username = req.body.username; Members.password = req.body.password; var refererURL = req.headers.referer; Members.save((err, resSave) => { if(err) { console.log(err); res.redirect(refererURL); } else { console.log('saved'); } }) Members.find({}, function (err, resDB) { assert.equal(err,null); console.log(json(resDB)); });
Members.save()
是好的,但是Members.find()
仍然是错误的。
帮我看看我的错误是什么? 谢谢!
试试下面的代码:
在member_model.js (在models / admin文件夹中):
将以下代码更改为:
// module.exports = mongoose.model('members', MemberSchema); module.exports = { memberCollection: mongoose.model('members', MemberSchema) }
在index.js (在controllers / admin文件夹中):
const members = require('../../models/admin/member_model'); members.memberCollection.find({}, function (err, resDB) { assert.equal(err,null); console.log(json(resDB)); });