Ich möchte ensureIndex
auf der authorName
aufrufen, was ist der Befehl und wo in diesem Code sollte ich es setzen?
Wenn Sie ensureIndex
nicht direkt aufrufen, geben Sie an, dass das Feld wie folgt in Ihrem Schema indiziert werden soll:
Ausgehend von dieser Definition ruft Mongoose ensureIndex
für Sie auf, wenn Sie das Modell über den Aufruf mongoose.model
registrieren.
Um die Aufrufe von ensureIndex
zu sehen, die Mongoose ausführt, aktivieren Sie die Debugausgabe, indem Sie Ihrem Code Folgendes hinzufügen:
Sie könnten diese Aussage verwenden:
%Vor% Wenn Sie zum Beispiel einige Integrationstests durchführen möchten, müssen Sie Ihre Sammlungen schnell löschen.
In diesem Fall erstellt mongoose während der Laufzeit keine Indizes mehr, selbst wenn die Option autoIndex
auf true
gesetzt ist.
Diese Antwort könnte in diesem Fall nützlich sein.
Sie können die Indexmethode Schema # aufrufen, um den Index zu erstellen
%Vor%Sie können das Erstellen eines Indexereignisses anhören.
%Vor%Hinweis: Das Erstellen des Indexes erfolgt asynchron. Wenn Sie einen eindeutigen Index erstellen, können Sie keine doppelten Daten einfügen. oder das Erstellen eines Index schlägt fehl;
Definieren Sie zuerst den Index für das Feld autornName, und wenn Sie aufgrund einer bestimmten Anforderung manuell den Sicherheitsindex aufrufen möchten, müssen Sie autoIndex auf false setzen. So würde Ihr Schema aussehen:
%Vor%Und basierend auf der Anforderung können Sie die Methode "useIndexes" für das Modell aufrufen, das Sie mit diesem Schema erstellt haben. ProjectModel.ensureIndexes ();
Tags und Links javascript indexing mongodb mongoose