Som du fick reda på, genom att lägga till ett unikt index till ett fält i en array framtvingar inte det unika inom arrayen, det säkerställer att inga två dokument i samlingen innehåller samma fältvärde i arrayen.
Titta istället på $addToSet
arrayoperator som ett sätt att atomiskt lägga till ett värde till en array endast om den inte redan finns i arrayen.