I want to print all documents of "members" collection. I used find()
function but it throw error : find() is not a function
.
In member_model.js (in models/admin folder):
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var MemberSchema = new Schema({
username: String,
password: String
});
module.exports = mongoose.model('members', MemberSchema);
In index.js (in controllers/admin folder):
const members = require('../../models/admin/member_model');
var Members = new members();
Members.find({}, function (err, resDB) {
assert.equal(err,null);
console.log(json(resDB));
});
I checked connecting to DB, it's still ok. I also read some other questions but any suitable answer for my problem.
Note more i tested like this :
In auth.js (in controllers/admin folder):
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()
is ok, but Members.find()
still error.
Help me what my error is ? Thanks!
I want to print all documents of "members" collection. I used find()
function but it throw error : find() is not a function
.
In member_model.js (in models/admin folder):
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var MemberSchema = new Schema({
username: String,
password: String
});
module.exports = mongoose.model('members', MemberSchema);
In index.js (in controllers/admin folder):
const members = require('../../models/admin/member_model');
var Members = new members();
Members.find({}, function (err, resDB) {
assert.equal(err,null);
console.log(json(resDB));
});
I checked connecting to DB, it's still ok. I also read some other questions but any suitable answer for my problem.
Note more i tested like this :
In auth.js (in controllers/admin folder):
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()
is ok, but Members.find()
still error.
Help me what my error is ? Thanks!
Share Improve this question edited Jan 4, 2017 at 7:33 nem035 35.5k6 gold badges92 silver badges104 bronze badges asked Jan 4, 2017 at 3:46 Ryan TranRyan Tran 4876 silver badges17 bronze badges 7-
Sounds like
members
might not be importing correctly – Sterling Archer Commented Jan 4, 2017 at 3:50 - const members = require('../../models/admin/member_model');Is this line ? – Ryan Tran Commented Jan 4, 2017 at 3:51
- yep. have you tried checking whats stored in Members? – iagowp Commented Jan 4, 2017 at 3:51
- I have just edited my question more details. Please help me check it ! – Ryan Tran Commented Jan 4, 2017 at 4:00
- check ur module.export in a file where u have written your schema for member collection or update your question with schema file – Simran Commented Jan 4, 2017 at 6:01
1 Answer
Reset to default 3Try the below code:
In member_model.js (in models/admin folder):
Change the below code to :
// module.exports = mongoose.model('members', MemberSchema);
module.exports = {
memberCollection: mongoose.model('members', MemberSchema)
}
In index.js (in controllers/admin folder):
const members = require('../../models/admin/member_model');
members.memberCollection.find({}, function (err, resDB) {
assert.equal(err,null);
console.log(json(resDB));
});
发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745357862a4624223.html
评论列表(0条)