MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Schéma du modèle Mongoose avec tableau de référence :CastError :Échec de la conversion en ObjectId pour la valeur [object Object]

Votre schéma d'article attend un tableau de ObjectId :

var ArticleSchema = new Schema({
  ...
  categories: [{ 
    type: Schema.Types.ObjectId, 
    ref: 'Category' }]
});

Cependant req.body contient un objet catégorie :

categories:
   [ { _id: '53c934bbf299ab241a6e0524',
     name: '1111',
     parent: '53c934b5f299ab241a6e0523',
     __v: 0,
     subs: [],
     sort: 1 } ]

Et Mongoose ne peut pas convertir l'objet de catégorie en un ObjectId . C'est pourquoi vous obtenez l'erreur. Assurez-vous que les categories dans req.body ne contient que des identifiants :

{ title: 'This is title',
  content: '<p>content here</p>',
  categories: [ '53c934bbf299ab241a6e0524' ],
  updated: [ 1405697477413 ] }