diff --git a/packages/db-mongodb/src/models/buildSchema.ts b/packages/db-mongodb/src/models/buildSchema.ts index 92c33d70ea8..63f789c3377 100644 --- a/packages/db-mongodb/src/models/buildSchema.ts +++ b/packages/db-mongodb/src/models/buildSchema.ts @@ -81,6 +81,8 @@ const formatBaseSchema = ({ unique: (!disableUnique && field.unique) || false, } + const effectivelyOptional = field.required !== true || Boolean(field.admin?.condition) + if ( schema.unique && (fieldShouldBeLocalized({ field, parentIsLocalized }) || @@ -88,7 +90,7 @@ const formatBaseSchema = ({ (fieldAffectsData(field) && field.type !== 'group' && field.type !== 'tab' && - field.required !== true)) + effectivelyOptional)) ) { schema.sparse = true }