Node.js 架构不是构造函数
我已经创建了一个名为session.js的模型。我正在使用Angular 4处理平均堆栈应用程序,我遇到了下面的错误Node.js 架构不是构造函数,node.js,angular,express,mean-stack,Node.js,Angular,Express,Mean Stack,我已经创建了一个名为session.js的模型。我正在使用Angular 4处理平均堆栈应用程序,我遇到了下面的错误 var MongoClient = require('mongodb').MongoClient; var schema = new MongoClient.Schema({ name : String, description : String, fromDate : Date, toDate : Date }
var MongoClient = require('mongodb').MongoClient;
var schema = new MongoClient.Schema({
name : String,
description : String,
fromDate : Date,
toDate : Date
})
var Session = MongoClient.model('session',schema);
module.exports = Session;
代码给出了以下错误:
var schema = new MongoClient.Schema({
^
TypeError: MongoClient.Schema is not a constructor
有人能建议我如何使用MongoClient创建上述模式吗?您需要使用:
如果您想创建模式,可以使用类似ODM的
您需要使用:
如果您想创建模式,可以使用类似ODM的
您得到的错误是正确的,因为您试图使用的函数不存在 您正在使用
mongodb
npm,并且MongoClient
没有.Schema
可能您将驱动程序与混淆,因为您试图使用一个不存在的函数,所以得到的错误是正确的 您正在使用
mongodb
npm,并且MongoClient
没有.Schema
可能您将驱动程序与
Schema
是mongoose
notMongoClient
Schema
是mongoose
不是MongoClient
var MongoClient = require('mongodb').MongoClient;
var url = "mongodb://localhost:27017/YOUR_DB";
MongoClient.connect(url, function(err, db) {
if (err) throw err;
const data = { name: "Company Inc", description: "..." };
db.collection("datas").insertOne(data, function(err, res) {
if (err) throw err;
console.log("1 document inserted");
db.close();
});
});
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const schema = new Schema({
name : String,
description : String,
fromDate : Date,
toDate : Date
});