From 8aca6fadfeddeb456bb892fcb84f80aa8faebb6b Mon Sep 17 00:00:00 2001
From: erichard <elliot.richard@lal.in2p3.fr>
Date: Mon, 3 Aug 2020 11:13:44 +0200
Subject: [PATCH] customisable labelstower : select all attributs from element
 talble

select all attributs from element talble in order retrieve all attributs that
developper declared in app/models.py.
---
 labelstower/getter.py | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/labelstower/getter.py b/labelstower/getter.py
index 64ef0a7..b633709 100644
--- a/labelstower/getter.py
+++ b/labelstower/getter.py
@@ -52,30 +52,24 @@ def get_selected_elements(id_mandatory_labels: int, id_forbiden_labels: str, num
     else:
         query = '''
                     SELECT 
-                        DISTINCT ELEMENT.id
-                        , element_name 
+                        ELEMENT.*
                     FROM 
                         ELEMENT 
                             INNER JOIN 
                         ELEMENT_LABEL 
                                 ON ELEMENT.id = ELEMENT_LABEL.id_element 
-                            INNER JOIN 
-                        label 
-                                ON ELEMENT_LABEL.id_label=label.id 
                     WHERE 
-                        element_name NOT IN (
+                        id_element NOT IN (
                                         SELECT 
-                                            element_name 
+                                            id_element 
                                         FROM 
                                             ELEMENT 
                                                 INNER JOIN 
                                             ELEMENT_LABEL 
-                                                    ON ELEMENT.id = ELEMENT_LABEL.id_element 
-                                                INNER JOIN 
-                                            label 
-                                                    ON ELEMENT_LABEL.id_label = label.id 
-                                        WHERE  id_label IN ({}) ) 
-                                        ORDER BY element_name ASC
+                                                    ON ELEMENT.id = ELEMENT_LABEL.id_element
+                                        WHERE  id_label IN ({}) )
+                    GROUP BY ELEMENT.id 
+                    ORDER BY element_name ASC
         '''.format(id_forbiden_labels)
 
     selected_elements = send_query_to_db(query)
-- 
GitLab