Javascript 猫鼬中的类型错误
我正在做作业,试图让我们今天在教程中使用的猫鼬代码生效。 但我有一个错误,我不知道为什么 index.js:Javascript 猫鼬中的类型错误,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我正在做作业,试图让我们今天在教程中使用的猫鼬代码生效。 但我有一个错误,我不知道为什么 index.js: 然后在start()函数中调用addRooms()将房间保存到数据库中 function start(req, res) { /*add rooms to mongodb*/ addRooms(); var player = req.body.player; // Sanitize the player name as it may be displayed
然后在start()函数中调用addRooms()将房间保存到数据库中
function start(req, res) {
/*add rooms to mongodb*/
addRooms();
var player = req.body.player;
// Sanitize the player name as it may be displayed
req.session.player = sanitize(player).escape();
req.session.currentRoom = "bridge"; // We start on the bridge
res.redirect("/game")
}
但我得到了一个错误:
我已经缩小了范围,使之成为一个问题
var bridge = new Rooms2406 ({etc...});
我不明白这里出了什么问题,好像它不知道什么是房间2406,但我已经定义好了
有什么想法吗
谢谢我认为问题在于没有调用setupRoomDb函数,该函数负责使用模型初始化变量room2406,因为该变量未定义,因此在调用addRooms函数时,会出现上述错误 未调用setupRoomDB的原因很简单,因为从未触发数据库打开事件,因为您尚未设置数据库连接,请使用mongoose.connect连接到您的数据库,它将解决您的错误 更新代码
var fs = require('fs');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/myDatabase')//use appropriate database here.
var db = mongoose.connection;
var Rooms2406;
var setupRoomDB = function () {
var roomSchema = mongoose.Schema({
title: String,
description: String,
roomExits: [String]
});
Rooms2406 = mongoose.model("Rooms2406", roomSchema);
}
db.once('open', setupRoomDB);
我认为问题在于,没有调用setupRoomDb函数,该函数负责使用模型初始化变量room2406,因为该变量未定义,因此在调用addRooms函数时,会出现上述错误 未调用setupRoomDB的原因很简单,因为从未触发数据库打开事件,因为您尚未设置数据库连接,请使用mongoose.connect连接到您的数据库,它将解决您的错误 更新代码
var fs = require('fs');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/myDatabase')//use appropriate database here.
var db = mongoose.connection;
var Rooms2406;
var setupRoomDB = function () {
var roomSchema = mongoose.Schema({
title: String,
description: String,
roomExits: [String]
});
Rooms2406 = mongoose.model("Rooms2406", roomSchema);
}
db.once('open', setupRoomDB);
我认为问题在于,没有调用setupRoomDb函数,该函数负责使用模型初始化变量room2406,因为该变量未定义,因此在调用addRooms函数时,会出现上述错误 未调用setupRoomDB的原因很简单,因为从未触发数据库打开事件,因为您尚未设置数据库连接,请使用mongoose.connect连接到您的数据库,它将解决您的错误 更新代码
var fs = require('fs');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/myDatabase')//use appropriate database here.
var db = mongoose.connection;
var Rooms2406;
var setupRoomDB = function () {
var roomSchema = mongoose.Schema({
title: String,
description: String,
roomExits: [String]
});
Rooms2406 = mongoose.model("Rooms2406", roomSchema);
}
db.once('open', setupRoomDB);
我认为问题在于,没有调用setupRoomDb函数,该函数负责使用模型初始化变量room2406,因为该变量未定义,因此在调用addRooms函数时,会出现上述错误 未调用setupRoomDB的原因很简单,因为从未触发数据库打开事件,因为您尚未设置数据库连接,请使用mongoose.connect连接到您的数据库,它将解决您的错误 更新代码
var fs = require('fs');
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/myDatabase')//use appropriate database here.
var db = mongoose.connection;
var Rooms2406;
var setupRoomDB = function () {
var roomSchema = mongoose.Schema({
title: String,
description: String,
roomExits: [String]
});
Rooms2406 = mongoose.model("Rooms2406", roomSchema);
}
db.once('open', setupRoomDB);
看起来不像调用了
setupRoomDB
:未发出db
上的open
事件。如何创建到MongoDB数据库的连接?看起来不像调用了setupRoomDB
:未发出db
上的open
事件。如何创建到MongoDB数据库的连接?看起来不像调用了setupRoomDB
:未发出db
上的open
事件。如何创建到MongoDB数据库的连接?看起来不像调用了setupRoomDB
:未发出db
上的open
事件。如何创建到MongoDB数据库的连接?谢谢!这是有道理的。但是我该怎么做才能让它在mongodb中只定义一次呢?我不确定您是否连接到了数据库,包括以下行mongoose.connect('path to your db');类似猫鼬的东西。连接mongodb://localhost/yourdbname');工作得很好!非常感谢你!非常感谢。这是有道理的。但是我该怎么做才能让它在mongodb中只定义一次呢?我不确定您是否连接到了数据库,包括以下行mongoose.connect('path to your db');类似猫鼬的东西。连接mongodb://localhost/yourdbname');工作得很好!非常感谢你!非常感谢。这是有道理的。但是我该怎么做才能让它在mongodb中只定义一次呢?我不确定您是否连接到了数据库,包括以下行mongoose.connect('path to your db');类似猫鼬的东西。连接mongodb://localhost/yourdbname');工作得很好!非常感谢你!非常感谢。这是有道理的。但是我该怎么做才能让它在mongodb中只定义一次呢?我不确定您是否连接到了数据库,包括以下行mongoose.connect('path to your db');类似猫鼬的东西。连接mongodb://localhost/yourdbname');工作得很好!非常感谢你!