From 196b0895f30f91d8156a23abbd761386d9c6997d Mon Sep 17 00:00:00 2001 From: Alexandre BODIN Date: Tue, 27 Apr 2021 03:05:43 +1200 Subject: [PATCH] Fix issue relation loosing extra options on ctb update Fixes #3409 (#10102) --- .../services/schema-builder/content-type-builder.js | 3 ++- .../services/schema-builder/index.js | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/strapi-plugin-content-type-builder/services/schema-builder/content-type-builder.js b/packages/strapi-plugin-content-type-builder/services/schema-builder/content-type-builder.js index a2387bf7df..103ea1b67d 100644 --- a/packages/strapi-plugin-content-type-builder/services/schema-builder/content-type-builder.js +++ b/packages/strapi-plugin-content-type-builder/services/schema-builder/content-type-builder.js @@ -158,7 +158,8 @@ module.exports = function createComponentBuilder() { this.unsetRelation(oldAttribute); } - newAttribute.autoPopulate = newAttribute.autoPopulate || oldAttribute.autoPopulate; + // keep extra options that were set manually on oldAttribute + _.defaults(newAttribute, oldAttribute); return this.setRelation({ key, diff --git a/packages/strapi-plugin-content-type-builder/services/schema-builder/index.js b/packages/strapi-plugin-content-type-builder/services/schema-builder/index.js index a2fb713f46..ff9bb784fa 100644 --- a/packages/strapi-plugin-content-type-builder/services/schema-builder/index.js +++ b/packages/strapi-plugin-content-type-builder/services/schema-builder/index.js @@ -115,8 +115,8 @@ function createSchemaBuilder({ components, contentTypes }) { targetAttribute, columnName, dominant, - autoPopulate, private: isPrivate, + ...restOfOptions } = attribute; const attr = { @@ -124,7 +124,7 @@ function createSchemaBuilder({ components, contentTypes }) { columnName: columnName || undefined, configurable: configurable === false ? false : undefined, private: isPrivate === true ? true : undefined, - autoPopulate, + ...restOfOptions, }; if (!this.contentTypes.has(target)) {