2014-10-20 66 views
0

虽然将集合中蒙戈DB与和的NodeJS猫鼬工作,定义了两个文件MongoDB的集合插入记录不工作

的Model.js

var mongoose = require('mongoose'); 
mongoose.connect('mongodb://localhost/stack1'); 


var stackSchema = mongoose.Schema({ 
    name: String 
}) 

var Schema = mongoose.Schema, 
    ObjectId = Schema.ObjectId; 

var tagData = new Schema(
{ 
    tag : String, 
    data :[viewData] 
} 
    ) 
var viewData = new Schema({ 
    view  : String, 
    date  : Date 
}); 

module.exports = mongoose.model('Tag', tagData); 

的View.js

var Tag = require('./Model'); 

var view =({ 
    "view" : "700", 
    "date" : "2001/1/20" 

}); 

var tag = new Tag(
      {"tag" : "java"} 


    ); 


tag.data.push(view); 
//console.log(tag) 
tag.save(function (err) { 
    if (!err) console.log('Success!'); 

}); 

在执行上面的代码时,我可以看到co中的成功消息nsole

bash $ node view.js 
Success! 

当我查询的MongoDB集合它返回任何结果

> db.stack1.find() 

我在做什么错了,我怎么能改正

+1

如果您在MongoDB的控制台,那么你应该更改数据库'使用stack1'执行查询,在此之后,您可以访问'tag'集合'db.Tag.find()' – Mirodil 2014-10-20 13:23:44

回答

1

find查询看在stack1在shell中收集默认数据库。

要查询tags集合在stack1数据库,你与你的目标代码的内容:

> use stack1 
> db.tags.find()