var mongoose = require('mongoose') ;
var models = require('../models/username') ;
var User = models.User ;
mongoose.connect('mongodb://localhost/mongogroup') ;
function doquery(){
User.find({"username":"xiaoming"},function(err,doc){
if(doc) {
console.log('found it');
};
});
}
username.js
中的内容为
var mongoose = require('mongoose') ;
var Schema = mongoose.Schema ;
var UserSchema = new Schema({
username : String ,
}) ;
exports.User = mongoose.model('User',UserSchema) ;
数据库连接没有什么问题,为什么不能实现查询功能了? ps:事实上去掉function doquery(){ }是可以工作的,为什么加上后运行就是没有任何反应!
搭车做个广告,操作mongoose必须少不了mongoomise
@bijiabo 谢谢!已经在看,顺便请教个问题: GroupModel.find({groupname:search_doc},function(err,doc){ console.log(doc); //可以正常打印出整个查询到的文档! console.log(doc.groupname); //但是不可以只打印查询到的文档groupname键的值??? }); 请问我怎样才能只打印出groupname键的值
@kingche 按理来说如果doc!==null的话应该可以打印出doc.groupname的呀 你的doc打印出来内容是什么@@?
@damngoto 哇!看起来很棒>_<
function doquery(){ User.find({“username”:“xiaoming”},function(err,doc){ if(doc) { console.log(‘found it’); }) ; } 少了个大括号吧
function doquery(){ User.find({“username”:“xiaoming”},function(err,doc){ if(doc) { console.log(‘found it’); } }) ; }
@bijiabo undefine
@jayself 上面是我写错了,如果真是少了括号的话,运行时会报语法错误的,但是实际运行了什么都没反应!当我断开net stop mongodb服务时,也立即会报错。 事实上去掉function doquery(){ }是可以工作的,为什么加上后运行就是没有任何反应!
求解决!自己顶!
修改了一些源代码中的拼写错误之后,运行上述代码没问题。
** index.js
**
var mongoose = require('mongoose');
var models = require('./username');
var User = models.User;
mongoose.connect('mongodb://localhost/mongogroup');
function doquery(){
User.find({"username":"xiaoming"},function(err,doc){
if(doc) {
console.log('found it',doc);
};
});
};
doquery();
@bnuhero 谢谢!整了半天原来是函数未被调用的问题~好囧好囧!