diff --git a/api/src/controllers/fields.ts b/api/src/controllers/fields.ts index 402c544d97..efa9c89181 100644 --- a/api/src/controllers/fields.ts +++ b/api/src/controllers/fields.ts @@ -74,7 +74,9 @@ const newFieldSchema = Joi.object({ default_value: Joi.any(), max_length: [Joi.number(), Joi.string(), Joi.valid(null)], is_nullable: Joi.bool(), - }).unknown(), + }) + .unknown() + .allow(null), meta: Joi.any(), }); @@ -158,7 +160,9 @@ const updateSchema = Joi.object({ default_value: Joi.any(), max_length: [Joi.number(), Joi.string(), Joi.valid(null)], is_nullable: Joi.bool(), - }).unknown(), + }) + .unknown() + .allow(null), meta: Joi.any(), }).unknown(); diff --git a/app/src/modules/settings/routes/data-model/get-local-type.ts b/app/src/modules/settings/routes/data-model/get-local-type.ts index fefaa4eef8..419d0ce43d 100644 --- a/app/src/modules/settings/routes/data-model/get-local-type.ts +++ b/app/src/modules/settings/routes/data-model/get-local-type.ts @@ -19,7 +19,7 @@ export function getLocalTypeForField( if (relations.length === 1) { const relation = relations[0]; if (relation.one_collection === 'directus_files') return 'file'; - if (relation.many_collection === collection) return 'm2o'; + if (relation.many_collection === collection && relation.many_field === field) return 'm2o'; return 'o2m'; }