2017-01-10 4 views
0

少し奇妙なことが起こっていて、誰かが私を助けてくれるのだろうかと思っていました。私は完全にMongoDBからすべてのレコードを取得することができますが、IDで1レコードを取得しようとすると、私はCastErrorを取得しているMEANアプリケーションがあります。私は私のバージョンのMongoをダウングレードしようとしましたが、問題は依然として残っています。どんな助けも素晴らしいだろう。おかげでCastError:モデル "Article"のパス "_id"の値 "id goes here"に失敗しました

var express = require('express'); 
 
var router = express.Router(); 
 

 
var Article = require('../models/article'); 
 

 

 
/* GET users listing. */ 
 
router.get('/', function(req, res, next) { 
 
    Article.getArticles(function (err, articles) { 
 
     if (err) { 
 
      console.log(err); 
 
     } else { 
 
      res.json(articles); 
 

 
     } 
 
    }); 
 
}); 
 

 
router.get('/:id', function(req, res, next) { 
 
    Article.getArticleById(req.params.id, function (err, article) { 
 
     if (err) { 
 
      console.log(err); 
 
     } else { 
 
      res.json(article); 
 
     } 
 
    }); 
 
}); 
 

 
module.exports = router;

var mongoose = require('mongoose').set('debug', true); 
 

 
var articleSchema = mongoose.Schema({ 
 

 
    title: { 
 
     type: String, 
 
     index: true, 
 
     required: true 
 
    }, 
 
    body: { 
 
     type: String, 
 
     required: true 
 
    }, 
 
    date: { 
 
     type: Date, 
 
     default: Date.now 
 
    }, 
 
    category: { 
 
     type: String, 
 
     index: true, 
 
     required: true 
 
    } 
 
}); 
 

 
var Article = module.exports = mongoose.model('Article', articleSchema); 
 

 
// Get all articles 
 
module.exports.getArticles = function (callback) { 
 
    Article.find(callback); 
 
}; 
 

 
// Get article by ID 
 
module.exports.getArticleById = function (id, callback) { 
 
    Article.findById(id, callback); 
 

 
};

[CastError: Cast to ObjectId failed for value "58753da5d192f1aa25ebdd00" at path "_id" for model "Article"] 
 
    message: 'Cast to ObjectId failed for value "58753da5d192f1aa25ebdd00" at path "_id" for model "Article"', 
 
    name: 'CastError', 
 
    stringValue: '"58753da5d192f1aa25ebdd00"', 
 
    kind: 'ObjectId', 
 
    value: '58753da5d192f1aa25ebdd00', 
 
    path: '_id', 
 
    reason: undefined,

答えて

関連する問題