2017-06-29 34 views
0

使用MEAN堆棧做一個小項目。並且有一個問題,當發送一個post請求時,console.log顯示一個錯誤。貓鼬:「可能未處理的拒絕」。 ContactList.insert不是函數

error

錯誤狀態:

可能未處理的拒絕:{ 「數據」:「類型錯誤:ContactList.insert不是一個函數

我的服務器端代碼如下:

var express = require("express"); 
var app = express(); 
var mongoose = require('mongoose'); 
var logger = require("morgan"); 
var bodyParser = require("body-parser"); 
var path = require("path"); 

mongoose.connect("mongodb://127.0.0.1:27017/contactlist"); 

var ContactList = require("./server/models/contactList.js"); 


app.use(logger('dev')); 
app.use(bodyParser.json({limit:'50mb'})); 
app.use(bodyParser.urlencoded({limit:'50mb', extended:true})); 
app.use(express.static(path.join(__dirname, 'public'),{maxAge:1})); 

app.get('/contactlist', function(req, res) { 
    console.log('I received a get request'); 
    ContactList.find().exec(function(err, contacts) { 
    //console.log(contacts); 
    res.status(200).send(contacts); 
}); 
}); 

app.post('/contactlist', function(req, res) { 
    console.log(req.body); 
    ContactList.insert(req.body, function(err, contacts) { 
    res.json(contacts); 
    }); 
}); 

app.listen(process.env.PORT, function() { 
    console.log(`Express server running on port ${process.env.PORT}`); 

我不知道下面的代碼:

app.post('/contactlist', function(req, res) { 
     console.log(req.body); 
     ContactList.insert(req.body, function(err, contacts) { 
     res.json(contacts); 
     }); 
    }); 

控制器代碼

var myApp = angular.module('myApp', []); 
myApp.controller('AppCtrl', ['$scope', '$http', function($scope, $http) { 
    $http.get('/contactlist').then(function(response){ 
     console.log("I got the data I requested"); 
     $scope.contactList = response.data; 
    }); 

    $scope.addContact = function() { 
     console.log($scope.contact); 
     $http.post('/contactlist', $scope.contact).then(function(response) { 
      console.log(response); 
     }); 
    }; 

}]); 
+0

角碼在這裏無關緊要。您需要顯示的代碼位於'。/ server/models/contactList.js'中,您可能無法正確導出模型。 –

回答

1

貓鼬模型沒有一個.insert方法,他們有.create

ContactList.create(req.body, function(err, contacts) { 
    res.json(contacts); 
}); 

請確保你所以添加適當的錯誤處理。

相關問題