From a938f53a001892dfb568727743bdf08139826ca9 Mon Sep 17 00:00:00 2001 From: Thomas Druez Date: Wed, 12 Apr 2023 11:33:16 +0400 Subject: [PATCH] Optimize queries for rendering the relations #659 Signed-off-by: Thomas Druez --- scanpipe/templates/scanpipe/codebase_relation.html | 8 ++++---- scanpipe/views.py | 13 +++++++++---- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/scanpipe/templates/scanpipe/codebase_relation.html b/scanpipe/templates/scanpipe/codebase_relation.html index 1951f18bc..efe6a300e 100644 --- a/scanpipe/templates/scanpipe/codebase_relation.html +++ b/scanpipe/templates/scanpipe/codebase_relation.html @@ -21,9 +21,9 @@ - + - + @@ -32,7 +32,7 @@ {% if not request.GET.missing_only %} {% if forloop.first %} - {% if forloop.first %} -
From resourceFrom resource Match typeTo resourceTo resource
+ @@ -90,7 +90,7 @@ {% if not request.GET.missing_only %}
+ diff --git a/scanpipe/views.py b/scanpipe/views.py index fb05cbaff..84610630d 100644 --- a/scanpipe/views.py +++ b/scanpipe/views.py @@ -818,13 +818,18 @@ def get_context_data(self, **kwargs): project = self.object project_files = project.codebaseresources.files() + from_codebase_resources = project_files.from_codebase().prefetch_related( + "related_to__to_resource" + ) + to_codebase_resources = project_files.to_codebase().prefetch_related( + "related_from__from_resource" + ) + context.update( { "project": project, - "from_codebase_resources": project_files.from_codebase(), - "to_codebase_resources": project_files.to_codebase(), - # "missing_in_to": project_files.missing_in_to(), - # "missing_in_from": project_files.missing_in_from(), + "from_codebase_resources": from_codebase_resources, + "to_codebase_resources": to_codebase_resources, } ) return context