2017-02-09 3 views
0

So den Indexmongodb schema.createIndex ist keine Funktion

messageSchema.createIndex({content : "text"}, function(err, data){ 
    console.log(err); 
    console.log(data); 
    }); 

// Auch ich versuche, einen Index in meinem messageSchema

var messageSchema = new Schema({ 
    senderName : String, 
    content : String, 
    reply : String, 
    date: { type: Date, default: Date.now() }, 
    room : { type: Schema.Types.ObjectId } 
}); 

// Das ist zu schaffen, wie man versucht, zu erstellen versuchte

messageSchema.createIndex({content : "text"}); 

// versucht, diese zu

messageSchema.createIndex({"content" : "text"}); 

Der Fehler, den ich auf immer halten ist

TypeError: messageSchema.createIndex is not a function

jemand mir dabei helfen kann.

Antwort

3

Es Sie Mungo verwenden scheint. Unter der Haube

Jedes Schema wird einer MongoDB-Sammlung zugeordnet und definiert die Form der Dokumente innerhalb dieser Sammlung.

Im Mongo Mantel, collection.createIndex() funktioniert, aber in Mungo müssen Sie mySchema.index() verwenden. Mungo wird die Arbeit machen.

Hier finden Sie weitere Informationen: http://mongoosejs.com/docs/guide.html.

1

Das Verfahren ist für Sie suchen index genannt, nicht createIndex

1

von Mungo:

var messageSchema = new Schema({ 
    senderName : String, 
    content : { type: String, index: true }, 
    reply : String, 
    date: { type: Date, default: Date.now() }, 
    room : { type: Schema.Types.ObjectId } 
}); 
messageSchema.index({content: 'text'});