diff --git a/demo/collections/Page/index.js b/demo/collections/Page/index.js index 19b41edcbc..ba22aa64c7 100644 --- a/demo/collections/Page/index.js +++ b/demo/collections/Page/index.js @@ -67,7 +67,7 @@ module.exports = { { name: 'image', label: 'Image', - type: 'media', + type: 'upload', required: false, }, { diff --git a/src/mongoose/schema/buildSchema.js b/src/mongoose/schema/buildSchema.js index 45c79a99b2..24216761fa 100644 --- a/src/mongoose/schema/buildSchema.js +++ b/src/mongoose/schema/buildSchema.js @@ -13,7 +13,7 @@ const buildSchema = (configFields, config, options = {}, additionalBaseFields = } if (fieldSchema) { - fields[field.name] = fieldSchema(field, { localization: config.localization }); + fields[field.name] = fieldSchema(field, config); } }); @@ -25,7 +25,7 @@ const buildSchema = (configFields, config, options = {}, additionalBaseFields = block.fields.forEach((blockField) => { const fieldSchema = fieldToSchemaMap[blockField.type]; - if (fieldSchema) blockSchemaFields[blockField.name] = fieldSchema(blockField, { localization: config.localization }); + if (fieldSchema) blockSchemaFields[blockField.name] = fieldSchema(blockField, config); }); const blockSchema = new Schema(blockSchemaFields, { _id: false }); diff --git a/src/mongoose/schema/fieldToSchemaMap.js b/src/mongoose/schema/fieldToSchemaMap.js index 99d35a7d3b..21972fc5f9 100644 --- a/src/mongoose/schema/fieldToSchemaMap.js +++ b/src/mongoose/schema/fieldToSchemaMap.js @@ -34,6 +34,15 @@ const fieldToSchemaMap = { type: Date, }; }, + upload: (field, config) => { + const schema = { + ...formatBaseSchema(field), + type: Schema.Types.ObjectId, + autopopulate: true, + ref: config.upload.labels.singular, + }; + return schema; + }, relationship: (field) => { const schema = { ...formatBaseSchema(field),