2017-02-22 6 views
0

と私は私が持っているにもかかわらずdeprecatingWarning取得しています:DeprecatingWarning:マングース

私はポストマンでこれをテストしていたときに今私のコンソールが私にこのエラーを与えている

mongoose.Promise = global.Promise;

var express = require('express'); 
var responseTime = require('response-time'); 
var mongoose = require('mongoose'); 
var User = require('../models/user'); 
var Task = require('../models/task'); 
var Rating = require('../models/rating'); 
var Skill = require('../models/skill'); 
var Match = require('../models/match'); 
var UserSkill = require('../models/user_skill'); 
var app = express(); 
var bodyParser = require('body-parser'); 
var PORT_NUMBER = 3000; 

// response-time middleware (adds X-Response-Header to responses) 
app.use(responseTime()); 
// 
mongoose.Promise = global.Promise; 
mongoose.connect('mongodb://useyourown'); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ 
    extended: true 
})); 

app.post('/create', function(req,res){ 
    let newTask = new Task(); 

    newTask.name = req.body.name; 
    newTask.experience = req.body.experience; 
    newTask.user_id = req.body.user_id; 
    newTask.rating = req.body.rating; 

    newTask.save(function(err, task){ 
     if(err){ 
      return err; 
     } 
     else{ 
      console.log("Task saved: " + task.name); 
     } 
     res.redirect('hearbeat'); 
    }); 
}); 

DeprecationWarning: Mongoose: mpromise (mongoose's default promise library) is deprecated, plug in your own promise library instead: http://mongoosejs.com/docs/promises.html 

となっているため、正常に動作していません。 この種のエラーには多くの人がいますが、Promiseを追加するとエラーが発生します。なぜ私が今働いているのか分かりません。

答えて

0

あなたはmongooseに約束のライブラリを渡す必要があります。 app.jsで、shcema /モデルファイルでは、テスト・ファイルに

var mongoose = require('mongoose'); 
mongoose.Promise = global.Promise; 

は、代わりに私はブルーバード約束ライブラリを使用recoomendedネイティブglobal.Promiseを使用して、そのはるかに高速:https://softwareengineering.stackexchange.com/questions/278778/why-are-native-es6-promises-slower-and-more-memory-intensive-than-bluebird

+0

ありがとう、私はどこにでも置かなければならないことを知らなかった。 – user3450754

0

私が発見した:

"Yes, it appears that setting the mongoose. Promise in the schema files where mongoose.model is exported eliminates the warning in mongoose versions 4.8 and later."

は、私はあなたがもう一度あなたのバージョンを確認すべきだと思います。

+0

おかげで@chridam! – NguyenTungs