Por defecto, todas las colecciones regulares insertar automáticamente un campo _id si está ausente.
Sin embargo, este comportamiento se puede cambiar cuando crea la colección, estableciendo explícitamente el parámetro autoIndexId en falso.
> db.createCollection("noautoid", { autoIndexId: false })
{ "ok" : 1 }
Luego puede insertar documentos sin el campo _id. Pero algunos controladores, como el javascript uno (y por lo tanto, la consola mongo), agregan el campo _id por sí mismos. En la consola mongo, usted puede hacer esto:
> db.noautoid._mongo.insert(db.noautoid._fullName, {name: "Jack"})
> db.noautoid.find()
{ "name" : "Jack" }
Más información acerca del campo autoIndexId se puede encontrar en el MongoDB documentation. Esta página trata acerca de las Colecciones limitadas, pero el campo autoIndexId es común tanto para las colecciones normales como para las limitadas.
no su trabajo ... –
Ya no está permitido - se requiere el campo _id para la replicación y, por lo tanto, siempre debe existir. –