TypeError: Cannot read property 'find' of undefined on mongoose
TypeError: Cannot read property 'find' of undefined on mongoose
我是 MongoDB Atlas 的新手。我正在尝试使用 mongoose 查询我的 "test2" 数据库中当前存在的集合 "dogs"。
我正在使用 nodeJS 来执行查询
var mongoose = require('mongoose');
mongoose.connect('mongodb+srv://*****:*******b@cluster0-uln4x.mongodb.net/test?retryWrites=true&w=majority', {
useUnifiedTopology: true,
useNewUrlParser: true,
})
.then(() => console.log('DB Connected!!!'))
.catch(err => {
console.log('did not work'); });
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
db.dogs.find().forEach(printjson); //ERROR!
});
导致错误:TypeError: Cannot read property 'find' of undefined
狗怎么会是undefined
?
在你的代码中 dogs
必须是一个猫鼬模型,还将 mongoDB 连接字符串更改为 test2
,请试试这个:
var mongoose = require('mongoose');
mongoose.connect('mongodb+srv://*****:*******b@cluster0-uln4x.mongodb.net/test2?retryWrites=true&w=majority', {
useUnifiedTopology: true,
useNewUrlParser: true,
})
.then(() => console.log('DB Connected!!!'))
.catch(err => {
console.log('did not work', err);
});
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
const dogsSchema = new mongoose.Schema({
any: {}
});
const Dogs = mongoose.model('dogs', dogsSchema, 'dogs');
db.once('open', function () {
Dogs.find().lean(true).exec((err, data) => {
console.log('Err ::', err, 'data ::', data)
})
});
我是 MongoDB Atlas 的新手。我正在尝试使用 mongoose 查询我的 "test2" 数据库中当前存在的集合 "dogs"。
我正在使用 nodeJS 来执行查询
var mongoose = require('mongoose');
mongoose.connect('mongodb+srv://*****:*******b@cluster0-uln4x.mongodb.net/test?retryWrites=true&w=majority', {
useUnifiedTopology: true,
useNewUrlParser: true,
})
.then(() => console.log('DB Connected!!!'))
.catch(err => {
console.log('did not work'); });
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
db.dogs.find().forEach(printjson); //ERROR!
});
导致错误:TypeError: Cannot read property 'find' of undefined
狗怎么会是undefined
?
在你的代码中 dogs
必须是一个猫鼬模型,还将 mongoDB 连接字符串更改为 test2
,请试试这个:
var mongoose = require('mongoose');
mongoose.connect('mongodb+srv://*****:*******b@cluster0-uln4x.mongodb.net/test2?retryWrites=true&w=majority', {
useUnifiedTopology: true,
useNewUrlParser: true,
})
.then(() => console.log('DB Connected!!!'))
.catch(err => {
console.log('did not work', err);
});
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
const dogsSchema = new mongoose.Schema({
any: {}
});
const Dogs = mongoose.model('dogs', dogsSchema, 'dogs');
db.once('open', function () {
Dogs.find().lean(true).exec((err, data) => {
console.log('Err ::', err, 'data ::', data)
})
});