sql >> Databáze >  >> NoSQL >> MongoDB

Schéma modelu Mongoose s referenčním polem:CastError:Přetypování do ObjectId selhalo pro hodnotu [object Object]

Schéma vašeho článku očekává pole ObjectId :

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

Nicméně req.body obsahuje objekt kategorie:

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

A Mongoose nemůže převést objekt kategorie na ObjectId . To je důvod, proč se zobrazí chyba. Ujistěte se, že categories v req.body obsahuje pouze id:

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


  1. Jak napsat následující vyhledávací dotaz mongo v Yii2

  2. mongoDB. číst, hledat časové razítko na základě oplog

  3. Řešení problémů s MongoDB ve Windows (C#) (Co dělat?)

  4. Získejte ID naposledy vloženého dokumentu v mongoDB s ovladačem Java