From 9339082f9b2df7952a526ef455f4e3d40b191e6a Mon Sep 17 00:00:00 2001 From: Yuri Kuznetsov Date: Mon, 15 Jul 2024 11:48:05 +0300 Subject: [PATCH] link: set attributes at once --- client/src/views/fields/link.js | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/client/src/views/fields/link.js b/client/src/views/fields/link.js index 7b7f39f570..b3cf681149 100644 --- a/client/src/views/fields/link.js +++ b/client/src/views/fields/link.js @@ -409,15 +409,17 @@ class LinkFieldView extends BaseFieldView { this.controlCreateButtonVisibility(); + const attributes = {}; + for (const [foreign, field] of Object.entries(this.getDependantForeignMap())) { - this.model.set(field, model.get(foreign)) + attributes[field] = model.get(foreign); } - this.getSelectFieldHandler().then(handler => { - handler.getAttributes(model) - .then(attributes => { - this.model.set(attributes) - }); + this.getSelectFieldHandler().then(async handler => { + this.model.set({ + ...attributes, + ...(await handler.getAttributes(model)), + }); }); }