0
Expressノードでmongooseを使用して作成したオブジェクトを保存するときに問題があります。Express Mongooseがデータを保存していません
いつも保存されていますが、サーバーにログインして自分で取得しようとしてもオブジェクトを見つけることはできません。
にMongoDBを保存するExpressのルート:
router.post('/share', function(req, res, next){
//console.log('Post Request Made', req);
//switch to be inputed as parameters of the request
//save share
var share = new Shares({ link: req.body.link, description: req.body.description });
// var share = new Shares({ req.data.link, req.data.description });
console.log('request body', req.body);
console.log('to be added', share);
//save to database
share.save(function(err, share){
if(err){
console.log(err);
} else {
console.log('the object was saved' , share);
var id = share._id;
res.send(id);
}
});
});
コンソールログ:
request body { link: 'test', description: 'test' }
to be added { link: 'test',
description: 'test',
_id: 5840b0393181d4000f652cba,
clicks: 0 }
the object was saved { __v: 0,
link: 'test',
description: 'test',
_id: 5840b0393181d4000f652cba,
clicks: 0 }
POST /share 200 73.618 ms - 26
This is the link page with id: 5840b0393181d4000f652cba
found []
GET /fluff/link/5840b0393181d4000f652cba 200 20.387 ms - 266
構成:
var mongoose = require('mongoose');
mongoose.Promise = global.Promise;
mongoose.connect('mongodb://mongo/shares');
require('./models/Shares');
あなたはそれが格納されているかどうか確認するためにはMongo DBをチェックしますか? – BlackMamba
私は実際にそれを実際に解決しました。私はデータベースの中で、私がmongooseでデバッグオプションをオンにした後に正しい領域にいたことを確認するために変更しなかったし、適切なクエリメソッドが私の答えをちょっと投稿するだろう。 –