跳到主要内容
CNode

mongoose无法查询数据

问答
KKrispomoho发布于 11 年前最后回复 11 年前
757540

数据库名: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)

T
TimothyJin#611 年前

@Krispomoho 自己查看mongose 的 schema配置

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

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

K
Krispomoho#411 年前
T
TimothyJin#311 年前

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

Z
zkaip#111 年前

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

这样才行吧

参与回复

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