Драйверът ще генерира само полето Id за вас, когато полетата са идентифицирани като _id
от колекция. Във вашия случай, Bar
е вграден в Foo
документ.
Следователно няма смисъл за Bar
да имате автоматично генерирано поле за идентификатор.
Във вашия пример наистина няма причина за Bar
да има уникален _id
. Когато правите заявка към колекцията, ще правите заявки въз основа на _id
на Foo
и ще имате Bar
обекти, налични в отговора.
Това определено е предвидено поведение.