Току-що се опитах да репликирам сценария, който описахте по-горе, от моя страна с почти същата версия на mongoose и MongoDB, работи добре, документите бяха създадени (и запазени) без уникалното свойство на firstName
поле в схемата. Не мисля, че причината вашите обекти да не са били записани в DB е поради липсата на уникалното свойство.
Освен това, причината колекцията да не е създадена без уникалното свойство е, че mongoose (или самата MongoDB) няма да създаде колекция, докато не вмъкнете данни в колекцията. Чрез добавяне на уникалното свойство MongoDB ще трябва да създаде индексен документ за това свойство в колекцията, като впоследствие добави данни към колекцията и затова изглежда, че колекцията е създадена само след добавяне на уникалното свойство. Така че докато db.<collectionName>.find({}
) може да не върне нищо, db.<collectionName>.getIndexes()
ще ви даде нещо.