CNode

mongoose无法查询数据

问答
KKrispomoho发布于11 年前最后回复11 年前7 回复5745 浏览0 收藏

数据库名:pomoho, 里面有一个user的集合 db.png

"use strict";
var mongoose = require('mongoose');
var db = mongoose.createConnection('localhost','pomoho');
db.on('error', function (err) {logger.log('error', 'db error', err)});
db.once('open', function () {
	console.log("link database success")
});
var mySchema = new mongoose.Schema({
	name: 'string',
	age: 'number'
});
var user = mongoose.model('user', mySchema);
user.find(function (err, user) {
	if (err) {
		return next(err);
	}
	console.log(user)
});

按照我上面的写法,find()中的函数都不会执行; 但是按照下面的写法,user返回一个空数组。

"use strict";
var mongoose = require('mongoose');
var db = mongoose.createConnection('localhost','pomoho');
db.on('error', function (err) {logger.log('error', 'db error', err)});
db.once('open', function () {
	console.log("link database success")
});
var mySchema = new mongoose.Schema({
	name: 'string',
	age: 'number'
});
var user = db.model('user', mySchema);
user.find(function (err, user) {
	if (err) {
		console.log(err);
	}
	console.log(user)
});

我不知道哪里出了问题,mongoose能不能指定查询某一个集合中的数据。

查看回复

回复 (7)

Z
zkaip#1·11 年前

user.find({},function (err, user) { if (err) { return next(err); } console.log(user) });

这样才行吧

T
TimothyJin#3·11 年前

@Krispomoho mongoose 默认生成的collection名字为users,是负数,不是user

K
Krispomoho#4·11 年前
K
Krispomoho#5·11 年前
引用 TimothyJin@Krispomoho mongoose 默认生成的collection名字为users,是负数,不是user

@TimothyJin 我把数据库中的集合名改为了负数,就能查出来了

T
TimothyJin#6·11 年前

@Krispomoho 自己查看mongose 的 schema配置

参与回复
登录后即可参与回复。登录