postメソッドが呼び出されるたびに、MongoDBを使用してデータベースにレコードを挿入しています。私は毎回post関数の中のDBに接続したくないことを知っていますが、これは私にエラーを与えていますか?どうすれば修正できますか?私はこのエラーを取得していますMongo DBは投稿外に接続しますか?
var mongo = require('mongodb');
var url = 'mongodb://localhost:27017/Wedding'
var db = function() {
mongo.connect(url, function(err, db){
if (!err){
return db;
}
});
}
app.post('/rsvp', function (req, res) {
var item ={
name: req.body.name,
attending: req.body.attending,
};
insertItem(item);
res.sendFile(path.join(__dirname + '/confirm.html'));
})
function insertItem(item){
db.collection('rsvpList').insertOne(item, function(err, result){
assert.equal(null, err);
})
}
:
TypeError: Object function() {
mongo.connect(url, function(err, db){
if (!err){
return db;
}
});
} has no method 'collection'
at insertItem (C:\Users\A587092\Documents\weddingWebsite\server.js:53:8)
at app.listen.host (C:\Users\A587092\Documents\weddingWebsite\server.js:38:4)
at Layer.handle [as handle_request] (C:\Users\A587092\Documents\weddingWebsite\node_modules\express\lib\router\layer.js:95:5)
頭痛の多くは、 Mongooseモジュールを使用してください。これは、接続管理とスキーマ/検証の両方に役立ちます。 – Paul