Node.js 将猫鼬与先前存在的猫鼬集合连接

Node.js 将猫鼬与先前存在的猫鼬集合连接,node.js,mongodb,mongoose,Node.js,Mongodb,Mongoose,我已经查了一段时间了,我被卡住了。我也一个问题一个问题地问了一遍,然后试了试,但一直没能让它运行起来 以下是我的项目的简要概述: 我有一个python脚本,每天从服务器上的一些日志中解析数据。每个日志都是一个python对象,它存储在一个集合中,在mongoDB的db“stabilitylogs”中具有相应的日期 我现在已经安装了node和mongoose,我正试图从一个名为-130702的特定集合中提取这些数据。我得到以下错误: C:\node\u app\node\u modules\mon

我已经查了一段时间了,我被卡住了。我也一个问题一个问题地问了一遍,然后试了试,但一直没能让它运行起来

以下是我的项目的简要概述: 我有一个python脚本,每天从服务器上的一些日志中解析数据。每个日志都是一个python对象,它存储在一个集合中,在mongoDB的db“stabilitylogs”中具有相应的日期

我现在已经安装了node和mongoose,我正试图从一个名为-130702的特定集合中提取这些数据。我得到以下错误:

C:\node\u app\node\u modules\mongodb\lib\mongodb\connection\server.js:570

犯错误; ^ ReferenceError:未定义架构

我的stabilitylog.js如下所示:

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

            var db = mongoose.connection;
            db.on('error', console.error.bind(console, 'connection error:'));
            db.once('open', function callback () {
                var rackSchema=new Schema({
                    _id: {type: String },
                    Headend:{
                        Name: String,
                        Rack: {
                            TestInfo:{
                                ScriptStart: String,
                                TotalReboots: String,
                                ScriptLoopCount: String,
                                ScriptName: String,
                                ScriptStop: String,
                                SystemName: String,
                                TotalSTBs: String,
                                PerReboots: String,
                                RunTime: String,
                                BuildVer: String
                                },
                            StbData: [{
                                Status: String,
                                UpTime: String,
                                DBType: String,
                                IP: String,
                                DBVersion: String,
                                RebootData: String,
                                MAC: String,
                                MWApp: String,
                                OS: String
                                },],
                            Number: String
                            }
                        }
                    },
                {collection: '130702'});

                var doc = mongoose.model(rackschema, '130702');
                doc.find();
                });
我真的是新手,我确信我的代码中有很多错误,但我真的需要一些帮助。 我正在windows 7上运行我的整个应用程序,安装了mongodb 2.2.4版,带有MSI安装程序和nodeJS-v0.10.12。我通过编写package.json文件,使用npm安装安装了mongodb和mongoose模块


非常感谢您的帮助。另外,如果需要更多信息,请告诉我

除非您已经拥有
var Schema=mongoose.Schema
在您的文件中,您需要像JohnnyHK所说的那样使用
new mongoose.Schema
。此外,如果希望立即执行查询,mongoose模型上的查询应该是这样的

doc.find({}, function(err,collection){ 
//do something with the collection
});

尝试
newmongoose.Schema
而不是
newschema
@JohnnyHK:谢谢。它似乎还不起作用!:/这似乎不起作用(我尝试检查它是否能够从db中提取数据。我得到一个“0”作为收集长度,即使它不是空的。我哪里出错了?
var MongoClient=require('mongodb')。MongoClient;//连接到db MongoClient.connect(“mongodb://localhost:27017//test,函数(err,db){if(!err){console.log(“我们已连接”);var collection=db.collection('movies');collection.find().toArray(函数(err,items){console.log(items.length);}}});
很抱歉格式化了!我不知道如何正确编辑它。