sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose-modell Schema med referensarray:CastError:Cast to ObjectId misslyckades för värde [object Object]

Ditt artikelschema förväntar sig en array med ObjectId :

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

Men req.body innehåller ett kategoriobjekt:

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

Och Mongoose kan inte konvertera kategoriobjektet till ett ObjectId . Det är därför du får felet. Se till att categories i req.body innehåller endast id:

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


  1. Webbskrapning och genomsökning med Scrapy och MongoDB

  2. MongoDB hitta()

  3. PHP-start:Det går inte att ladda det dynamiska biblioteket 'php_mongodb.dll'

  4. hur man uppdaterar ett nummerfält med ett annat nummerfält i MongoDB