From 453798c181576b8178e437d3d72f2a8ef9d5127b Mon Sep 17 00:00:00 2001 From: Fredrik Jonsson <frjo@xdeb.org> Date: Thu, 20 Sep 2018 23:33:40 +0200 Subject: [PATCH] Only deserialise stream_data to avoid run of sql queries. A drop from 1070 to 33 queries. --- opentech/apply/funds/models/mixins.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/opentech/apply/funds/models/mixins.py b/opentech/apply/funds/models/mixins.py index 54c23e415..d13c71f99 100644 --- a/opentech/apply/funds/models/mixins.py +++ b/opentech/apply/funds/models/mixins.py @@ -69,10 +69,12 @@ class AccessFormData: def deserialised_data(cls, data, form_fields): # Converts the file dicts into actual file objects data = data.copy() - for field in form_fields: - if isinstance(field.block, UploadableMediaBlock): - file = data.get(field.id, []) - data[field.id] = cls.process_file(file) + for field in form_fields.stream_data: + block = form_fields.stream_block.child_blocks[field['type']] + if isinstance(block, UploadableMediaBlock): + field_id = field.get('id') + file = data.get(field_id, []) + data[field_id] = cls.process_file(file) return data def get_definitive_id(self, id): -- GitLab