2016-12-14 16 views
0

私はこのコードの周りに頭を打ちましたが、私が直面している問題の解決策を理解することができません。MongoDbに間違ったドキュメントが追加される

私はmongoDbドキュメントに対して次のスキーマを持っています。

{ 

    "brand" : "String", 
    "series" : "String", 
    "model" : "String", 
    "deviceType" : "String", 
    "progress" : "Number", 
    "uploaded" : [] 

} 

後、私は詳細は私が

{ brand: 'HP', 
    series: 'Elitebook', 
    model: '8460P', 
    devicetype: 'laptop', 
    progress: 0, 
    uploaded: [] } 
を次のように文書が出ている移入するために使用しています、そのオブジェクトデータベース

var addData = function(details){ 
    console.log(details); 
    var promise = new Promise(function(resolve, reject){ 
     var document = new Document({ 

      brand : details.brand, 
      series : details.series, 
      model : details.model, 
      devicetype : details.devicetype, 
      progress : 0, 
      uploaded : [] 

     }); 

    //save the document into the database 
    document.save(function(err, document){ 
     if(err){ 
      reject(err); 
     } 
     else{ 
      console.log('document added--' + document); 
      console.log('document should be--' + details); 
      resolve('Document added successfully'); 
     } 

    }); 

}) 
return promise; 
} 

にドキュメントを追加するために使用しています機能です

しかし、追加されるドキュメントは、スキーマごとではなく、ドキュメントの1つのフィールドが欠落しています。私が間違っている場所を教えてください。以下は、追加される文書です。

document added--{ __v: 0, 
    brand: 'HP', 
    series: 'Elitebook', 
    model: '8460P', 
    progress: 0, 
    _id: 5850f50f0a0d7f055c441b7c, 
    uploaded: [] } 

答えて

2
  • _idそれが参照できるように、すべての文書に追加されたMongoDBのIDです。
  • __vは、ドキュメントのバージョン管理のためにMongooseによって追加されています。
  • devicetypeはモデルに含まれていないため、文書には追加されません。 deviceTypeを追加しました。devicetypeではなく追加しました。これらのプロパティ名は、大文字と小文字を区別します。
+0

ありがとう私の友人 – RushilAhuja

関連する問題