Mohlo by to být možné, pokud jste ochotni uložit jedinečné hodnoty v jiné kolekci . Bylo by to strukturováno takto:
{ "uniquestring" : "a", "account" : 111 }
{ "uniquestring" : "b", "account" : 111 }
{ "uniquestring" : "c", "account" : 111 }
{ "uniquestring" : "d", "account" : 222 }
{ "uniquestring" : "e", "account" : 222 }
{ "uniquestring" : "f", "account" : 222 }
Nejsem odborník na Mongoose, ale věřím, že můžete definovat modely pro propojení sbírek, přičemž zde pole účtu odkazuje na pole _id kolekce účtů.
Nyní můžete vynutit jedinečnost pomocí jednoduchého indexu:
db.uniquestrings.createIndex( { "uniquestring" : 1 } , { unique : true } )
Nyní bude mít vaše aplikace trochu více práce při ukládání dat (musí se ukládat do kolekce uniquestrings i kolekce účtů), ale nyní máte na úrovni databáze vynucení jedinečnosti těchto řetězců napříč databáze.
Úpravy PS vítá každý, kdo má podrobnější znalosti o tom, jak implementovat a používat takové modely v mongoose.