2016-08-04 14 views
0

Ich verwende mongodb für meine Anwendung und ich bin vor ein Problem wie ein Feld doppelte Werte als auch akzeptiert, die ich möchte nichtbeschränken doppelte Werte in mongodb speichern

Ich möchte wissen, wie es zu beschränken
ich habe einen Ansatz gefolgt von unique :true für ein Feld quesListName

var mongoose = require('mongoose'), 
Schema = mongoose.Schema; 

var QuestionListSchema = new Schema({ 
    topicName: String, 
    quesList: { 
     quesListName: { 
      type: String, 
      unique: true 
     }, 
     by: String 
    } 
}); 

Angabe aber noch ist es den doppelten Wert

Jede Hilfe zu akzeptieren ist sehr appreci

aufgeblasenen
+0

Versuch zu starten Mongo – chirag

+0

Ihre 'quesList' keine Liste ist, sondern nur ein Objekt . Welche Art von Duplikaten erhältst du eigentlich? Kannst du ein Beispiel geben? – str

+0

oder beziehen Sie sich auf diesen Link: http://StackOverflow.com/Questions/27354834/Mongoose-unique-true-not-work – chirag

Antwort

1

Sie benötigen die einzigartig für den Index zu definieren:

var QuestionListSchema = new Schema({ 
 
    topicName: String, 
 
    quesList: { 
 
     quesListName: { 
 
      type: String, 
 
      index: { 
 
       unique: true 
 
      } 
 
     }, 
 
     by: String 
 
    } 
 
});

http://mongoosejs.com/docs/api.html#schematype_SchemaType-index

+0

Vielen Dank dies für mich funktioniert Mit diesem habe ich einen anderen Fehler, d. Ich habe keinen Index für dieses Feld btw erstellt es ist jetzt behoben :) –