Es könnte möglich sein, wenn Sie bereit sind, die eindeutigen Werte in einer anderen Sammlung zu speichern . Es wäre wie folgt aufgebaut:
{ "uniquestring" : "a", "account" : 111 }
{ "uniquestring" : "b", "account" : 111 }
{ "uniquestring" : "c", "account" : 111 }
{ "uniquestring" : "d", "account" : 222 }
{ "uniquestring" : "e", "account" : 222 }
{ "uniquestring" : "f", "account" : 222 }
Ich bin kein Experte für Mongoose, aber ich glaube, dass Sie Modelle definieren können, um Sammlungen miteinander zu verknüpfen, wobei das Account-Feld hier auf das _id-Feld der Account-Sammlung verweist.
Jetzt können Sie die Eindeutigkeit mit einem einfachen Index erzwingen:
db.uniquestrings.createIndex( { "uniquestring" : 1 } , { unique : true } )
Jetzt muss Ihre App beim Speichern der Daten etwas mehr Arbeit leisten (sie muss sowohl in der Uniquestrings-Sammlung als auch in der Accounts-Sammlung gespeichert werden), aber Sie haben jetzt die Durchsetzung der Eindeutigkeit dieser Zeichenfolgen auf Datenbankebene für alle die Datenbank.
PS-Änderungen sind von jedem willkommen, der detailliertere Kenntnisse darüber hat, wie man solche Modelle in Mungo implementiert und verwendet.