From 5e7cd7aa327a5c00a90b9cde8c6ea88f5680165a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= <fpeters@entrouvert.com>
Date: Thu, 28 Mar 2019 08:36:51 +0100
Subject: [PATCH] misc: add slugs to visualizations (#30855)

---
 bijoe/visualization/forms.py                  |    2 +-
 .../migrations/0003_visualization_slug.py     |   42 +
 .../migrations/0004_auto_20190328_0825.py     |   20 +
 bijoe/visualization/models.py                 |   19 +
 bijoe/visualization/views.py                  |    1 +
 tests/fixtures/schema2/01_fixture.json        | 1290 +++++++++++------
 tests/test_views.py                           |    9 +
 7 files changed, 952 insertions(+), 431 deletions(-)
 create mode 100644 bijoe/visualization/migrations/0003_visualization_slug.py
 create mode 100644 bijoe/visualization/migrations/0004_auto_20190328_0825.py

diff --git a/bijoe/visualization/forms.py b/bijoe/visualization/forms.py
index 6e34d7b..0f1156a 100644
--- a/bijoe/visualization/forms.py
+++ b/bijoe/visualization/forms.py
@@ -43,7 +43,7 @@ from . import models
 class VisualizationForm(ModelForm):
     class Meta:
         model = models.Visualization
-        exclude = ('parameters',)
+        exclude = ('slug', 'parameters',)
         widgets = {
             'name': TextInput,
         }
diff --git a/bijoe/visualization/migrations/0003_visualization_slug.py b/bijoe/visualization/migrations/0003_visualization_slug.py
new file mode 100644
index 0000000..ad3f107
--- /dev/null
+++ b/bijoe/visualization/migrations/0003_visualization_slug.py
@@ -0,0 +1,42 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.12 on 2019-03-28 07:17
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+from django.utils.text import slugify
+
+
+class Migration(migrations.Migration):
+    dependencies = [
+        ('visualization', '0002_rename_parameters'),
+    ]
+
+    def forward_func(apps, schema_editor):
+        Visualization = apps.get_model('visualization', 'Visualization')
+        new_slugs = {}
+        for instance in Visualization.objects.all():
+            if not instance.slug:
+                new_slug = slugify(instance.name[:60]).strip('-')
+                if new_slug in new_slugs:
+                    i = 2
+                    while True:
+                        suffixed_slug = new_slug + '-%s' % i
+                        if not suffixed_slug in new_slugs:
+                            new_slug = suffixed_slug
+                            break
+                        i += 1
+                new_slugs[new_slug] = True
+                instance.slug = new_slug
+                instance.save()
+
+    def reverse_func(apps, schema_editor):
+        pass
+
+    operations = [
+        migrations.AddField(
+            model_name='visualization',
+            name='slug',
+            field=models.SlugField(null=True, unique=True, verbose_name='Identifier'),
+        ),
+        migrations.RunPython(forward_func, reverse_func)
+    ]
diff --git a/bijoe/visualization/migrations/0004_auto_20190328_0825.py b/bijoe/visualization/migrations/0004_auto_20190328_0825.py
new file mode 100644
index 0000000..fe33d77
--- /dev/null
+++ b/bijoe/visualization/migrations/0004_auto_20190328_0825.py
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.12 on 2019-03-28 07:25
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('visualization', '0003_visualization_slug'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='visualization',
+            name='slug',
+            field=models.SlugField(unique=True, verbose_name='Identifier'),
+        ),
+    ]
diff --git a/bijoe/visualization/models.py b/bijoe/visualization/models.py
index 8140ab7..7fad684 100644
--- a/bijoe/visualization/models.py
+++ b/bijoe/visualization/models.py
@@ -18,6 +18,7 @@ import json
 import datetime
 
 from django.db import models
+from django.utils.text import slugify
 from django.utils.translation import ugettext_lazy as _
 from jsonfield import JSONField
 
@@ -33,6 +34,7 @@ class JSONEncoder(json.JSONEncoder):
 
 
 class Visualization(models.Model):
+    slug = models.SlugField(verbose_name=_('Identifier'), unique=True)
     name = models.TextField(verbose_name=_('name'))
     parameters = JSONField(verbose_name=_('parameters'), encoder_class=JSONEncoder)
 
@@ -43,3 +45,20 @@ class Visualization(models.Model):
 
     def __unicode__(self):
         return self.name
+
+    def natural_key(self):
+        return (self.slug,)
+
+    def save(self, *args, **kwargs):
+        if not self.slug:
+            slug = base_slug = slugify(self.name)[:60].strip('-')
+            i = 1
+            while True:
+                try:
+                    Visualization.objects.get(slug=slug)
+                except Visualization.DoesNotExist:
+                    break
+                i += 1
+                slug = '%s-%s' % (base_slug, i)
+            self.slug = slug
+        return super(Visualization, self).save(*args, **kwargs)
diff --git a/bijoe/visualization/views.py b/bijoe/visualization/views.py
index 1c67c1c..d870062 100644
--- a/bijoe/visualization/views.py
+++ b/bijoe/visualization/views.py
@@ -216,6 +216,7 @@ class VisualizationsJSONView(MultipleObjectMixin, View):
             data_uri = reverse('visualization-json', kwargs={'pk': visualization.pk})
             data.append({
                 'name': visualization.name,
+                'slug': visualization.slug,
                 'path': request.build_absolute_uri(path),
                 'data-url': request.build_absolute_uri(data_uri),
             })
diff --git a/tests/fixtures/schema2/01_fixture.json b/tests/fixtures/schema2/01_fixture.json
index a73cbd7..d78684e 100644
--- a/tests/fixtures/schema2/01_fixture.json
+++ b/tests/fixtures/schema2/01_fixture.json
@@ -16,7 +16,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-nb-demandes-par-an-et-par-commune"
   },
   "model": "visualization.visualization",
   "pk": 1
@@ -38,7 +39,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-nb-demandes-par-an-et-par-commune-2"
   },
   "model": "visualization.visualization",
   "pk": 2
@@ -60,7 +62,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-delai-de-traitement-moyen-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 3
@@ -82,7 +85,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-les-formulaires-demandes-par-mois-et-par-formu"
   },
   "model": "visualization.visualization",
   "pk": 4
@@ -104,7 +108,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-canal-annee-en"
   },
   "model": "visualization.visualization",
   "pk": 5
@@ -126,7 +131,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-type-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 6
@@ -148,7 +154,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 7
@@ -170,7 +177,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-type-et-par-comm"
   },
   "model": "visualization.visualization",
   "pk": 8
@@ -192,7 +200,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-secteur-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 12
@@ -214,7 +223,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-semaine-3-derniers"
   },
   "model": "visualization.visualization",
   "pk": 13
@@ -236,7 +246,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-type-de-suivi-annee"
   },
   "model": "visualization.visualization",
   "pk": 14
@@ -258,7 +269,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-statut-simplifie-et-p"
   },
   "model": "visualization.visualization",
   "pk": 15
@@ -295,7 +307,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-statut-detaille"
   },
   "model": "visualization.visualization",
   "pk": 16
@@ -317,7 +330,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-dernier-agent-tr"
   },
   "model": "visualization.visualization",
   "pk": 19
@@ -339,7 +353,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-type-de-retard"
   },
   "model": "visualization.visualization",
   "pk": 20
@@ -361,7 +376,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "graphical",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-heure-annee-en-cour"
   },
   "model": "visualization.visualization",
   "pk": 23
@@ -383,7 +399,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-type-et-par-sect"
   },
   "model": "visualization.visualization",
   "pk": 26
@@ -405,7 +422,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_renseignement-dechets-demandes-par-qualification-et"
   },
   "model": "visualization.visualization",
   "pk": 27
@@ -427,7 +445,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-canal-annee-en-cour"
   },
   "model": "visualization.visualization",
   "pk": 28
@@ -449,7 +468,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-objet-et-par-mois-a"
   },
   "model": "visualization.visualization",
   "pk": 29
@@ -471,7 +491,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 31
@@ -493,7 +514,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-canal-anne"
   },
   "model": "visualization.visualization",
   "pk": 32
@@ -515,7 +537,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-dernier-agen"
   },
   "model": "visualization.visualization",
   "pk": 34
@@ -537,7 +560,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-qualificatio-2"
   },
   "model": "visualization.visualization",
   "pk": 35
@@ -559,7 +583,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "commune_stat"
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-qualificatio-3"
   },
   "model": "visualization.visualization",
   "pk": 36
@@ -581,7 +606,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-secteur-et-p"
   },
   "model": "visualization.visualization",
   "pk": 37
@@ -619,7 +645,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-statut-detai"
   },
   "model": "visualization.visualization",
   "pk": 38
@@ -641,7 +668,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-type-de-reta"
   },
   "model": "visualization.visualization",
   "pk": 39
@@ -663,7 +691,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-type-et-par"
   },
   "model": "visualization.visualization",
   "pk": 40
@@ -685,7 +714,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-qualificatio-4"
   },
   "model": "visualization.visualization",
   "pk": 41
@@ -707,7 +737,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "secteur"
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-type-et-par-2"
   },
   "model": "visualization.visualization",
   "pk": 42
@@ -729,7 +760,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-demandes-par-qualificatio-5"
   },
   "model": "visualization.visualization",
   "pk": 43
@@ -751,7 +783,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-reponses-envoyees-par-mai"
   },
   "model": "visualization.visualization",
   "pk": 44
@@ -773,7 +806,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_dysfonctionnement-dechets-signalements-par-decheter"
   },
   "model": "visualization.visualization",
   "pk": 46
@@ -795,7 +829,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "formdef"
-    }
+    },
+    "slug": "zz_old_tous-formulaires-demandes-par-statut-simplifie-par"
   },
   "model": "visualization.visualization",
   "pk": 47
@@ -817,7 +852,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "formdef"
-    }
+    },
+    "slug": "zz_old_tous-formulaires-tableau-mensuel-delai-moyen-trai"
   },
   "model": "visualization.visualization",
   "pk": 48
@@ -839,7 +875,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "receipt_time__month"
-    }
+    },
+    "slug": "zz_old_tous-formulaire-nb-de-demandes-par-canal-et-commune"
   },
   "model": "visualization.visualization",
   "pk": 49
@@ -856,7 +893,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz_old_signalement-voirie-demandes-issus-de-gru-par-destin"
   },
   "model": "visualization.visualization",
   "pk": 50
@@ -881,7 +919,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "ville-la-tronche-renseignement-dechets-demandes-par-qu"
   },
   "model": "visualization.visualization",
   "pk": 51
@@ -906,7 +945,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "ville-la-tronche-signalements-dechets-demandes-par-qua"
   },
   "model": "visualization.visualization",
   "pk": 52
@@ -931,7 +971,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "ville-la-tronche-signalement-voirie-demandes-par-quali"
   },
   "model": "visualization.visualization",
   "pk": 53
@@ -956,7 +997,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "ville-la-tronche-renseignement-voirie-demandes-par-qua"
   },
   "model": "visualization.visualization",
   "pk": 54
@@ -973,7 +1015,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz-_-renseignement-dechets-commune-stat-2"
   },
   "model": "visualization.visualization",
   "pk": 55
@@ -990,7 +1033,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz-_-signalements-dechets-guichet-commune"
   },
   "model": "visualization.visualization",
   "pk": 56
@@ -1012,7 +1056,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "zz-_-nb-de-demandes-par-formulaires-annee-en-cours"
   },
   "model": "visualization.visualization",
   "pk": 57
@@ -1037,7 +1082,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 128
@@ -1062,7 +1108,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-renseignements-dechets-par-quali"
   },
   "model": "visualization.visualization",
   "pk": 154
@@ -1087,7 +1134,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-renseignements-dechets-par-statu"
   },
   "model": "visualization.visualization",
   "pk": 155
@@ -1112,7 +1160,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-renseignements-dechets-par-quali"
   },
   "model": "visualization.visualization",
   "pk": 156
@@ -1137,7 +1186,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-renseignements-dechets-par-statu"
   },
   "model": "visualization.visualization",
   "pk": 157
@@ -1162,7 +1212,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-renseignements-dechets-par-qualific"
   },
   "model": "visualization.visualization",
   "pk": 158
@@ -1187,7 +1238,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 159
@@ -1212,7 +1264,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 160
@@ -1237,7 +1290,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 161
@@ -1262,7 +1316,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 162
@@ -1287,7 +1342,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 163
@@ -1312,7 +1368,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 164
@@ -1337,7 +1394,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 165
@@ -1362,7 +1420,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 166
@@ -1387,7 +1446,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 167
@@ -1412,7 +1472,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 168
@@ -1437,7 +1498,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 169
@@ -1462,7 +1524,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 170
@@ -1487,7 +1550,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 171
@@ -1512,7 +1576,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-renseignements-dechets-par-qualificat"
   },
   "model": "visualization.visualization",
   "pk": 172
@@ -1537,7 +1602,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 173
@@ -1562,7 +1628,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 174
@@ -1587,7 +1654,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 175
@@ -1612,7 +1680,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 176
@@ -1637,7 +1706,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 177
@@ -1662,7 +1732,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 178
@@ -1687,7 +1758,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 179
@@ -1712,7 +1784,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 180
@@ -1737,7 +1810,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 181
@@ -1762,7 +1836,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 182
@@ -1787,7 +1862,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 183
@@ -1812,7 +1888,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 185
@@ -1837,7 +1914,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-renseignements-dechets-par-qualificat"
   },
   "model": "visualization.visualization",
   "pk": 186
@@ -1862,7 +1940,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 187
@@ -1887,7 +1966,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 188
@@ -1912,7 +1992,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 189
@@ -1937,7 +2018,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 190
@@ -1962,7 +2044,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 191
@@ -1987,7 +2070,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-renseignements-dechets-par-qualificat"
   },
   "model": "visualization.visualization",
   "pk": 192
@@ -2012,7 +2096,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 193
@@ -2037,7 +2122,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 194
@@ -2062,7 +2148,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 195
@@ -2087,7 +2174,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 196
@@ -2112,7 +2200,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 197
@@ -2137,7 +2226,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 198
@@ -2162,7 +2252,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 199
@@ -2187,7 +2278,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 200
@@ -2212,7 +2304,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 201
@@ -2237,7 +2330,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 202
@@ -2262,7 +2356,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 203
@@ -2287,7 +2382,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-pierre-de-mesage-renseignements-dechets-par-qualific"
   },
   "model": "visualization.visualization",
   "pk": 204
@@ -2312,7 +2408,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-pierre-de-mesage-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 205
@@ -2337,7 +2434,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "mont-saint-martin-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 206
@@ -2362,7 +2460,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "mont-saint-martin-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 207
@@ -2387,7 +2486,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 208
@@ -2412,7 +2512,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 209
@@ -2437,7 +2538,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 210
@@ -2462,7 +2564,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 211
@@ -2487,7 +2590,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "quaix-en-chartreuse-renseignements-dechets-par-qualificati"
   },
   "model": "visualization.visualization",
   "pk": 212
@@ -2512,7 +2616,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "quaix-en-chartreuse-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 213
@@ -2537,7 +2642,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "miribel-lanchatre-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 214
@@ -2562,7 +2668,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "miribel-lanchatre-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 215
@@ -2587,7 +2694,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-renseignements-dechets-par-qualifi"
   },
   "model": "visualization.visualization",
   "pk": 216
@@ -2612,7 +2720,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 217
@@ -2637,7 +2746,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-barthelemy-de-sechilienne-renseignements-dechets-par"
   },
   "model": "visualization.visualization",
   "pk": 218
@@ -2662,7 +2772,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-barthelemy-de-sechilienne-renseignements-dechets-par-2"
   },
   "model": "visualization.visualization",
   "pk": 219
@@ -2687,7 +2798,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-commiers-renseignements-dechets-par-qualific"
   },
   "model": "visualization.visualization",
   "pk": 220
@@ -2712,7 +2824,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-commiers-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 221
@@ -2737,7 +2850,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 222
@@ -2762,7 +2876,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 223
@@ -2787,7 +2902,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 224
@@ -2812,7 +2928,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 225
@@ -2837,7 +2954,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontanil-cornillon-renseignements-dechets-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 226
@@ -2862,7 +2980,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontanil-cornillon-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 227
@@ -2887,7 +3006,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 228
@@ -2912,7 +3032,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 229
@@ -2937,7 +3058,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 230
@@ -2962,7 +3084,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 231
@@ -2987,7 +3110,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "murianette-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 232
@@ -3012,7 +3136,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "murianette-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 233
@@ -3037,7 +3162,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "hors-gam-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 234
@@ -3062,7 +3188,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "hors-gam-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 235
@@ -3087,7 +3214,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 236
@@ -3112,7 +3240,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 237
@@ -3137,7 +3266,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 238
@@ -3162,7 +3292,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 239
@@ -3187,7 +3318,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 240
@@ -3212,7 +3344,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 241
@@ -3237,7 +3370,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 242
@@ -3262,7 +3396,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 243
@@ -3287,7 +3422,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 244
@@ -3312,7 +3448,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 245
@@ -3337,7 +3474,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 246
@@ -3362,7 +3500,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 247
@@ -3387,7 +3526,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-renseignements-dechets-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 248
@@ -3412,7 +3552,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 249
@@ -3437,7 +3578,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 250
@@ -3462,7 +3604,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 251
@@ -3487,7 +3630,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 252
@@ -3512,7 +3656,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 253
@@ -3537,7 +3682,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 254
@@ -3562,7 +3708,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 255
@@ -3587,7 +3734,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 256
@@ -3612,7 +3760,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 257
@@ -3637,7 +3786,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 258
@@ -3662,7 +3812,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 259
@@ -3687,7 +3838,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 260
@@ -3712,7 +3864,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 261
@@ -3737,7 +3890,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 262
@@ -3762,7 +3916,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 263
@@ -3787,7 +3942,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 264
@@ -3812,7 +3968,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 265
@@ -3837,7 +3994,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-signalement-dechets-par-qualific"
   },
   "model": "visualization.visualization",
   "pk": 266
@@ -3862,7 +4020,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 267
@@ -3887,7 +4046,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 268
@@ -3912,7 +4072,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 269
@@ -3937,7 +4098,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-fontanil-cornillon-signalement-dechets-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 270
@@ -3962,7 +4124,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-fontanil-cornillon-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 271
@@ -3987,7 +4150,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 272
@@ -4012,7 +4176,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 273
@@ -4037,7 +4202,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 274
@@ -4062,7 +4228,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 275
@@ -4087,7 +4254,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 276
@@ -4112,7 +4280,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 277
@@ -4137,7 +4306,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 278
@@ -4162,7 +4332,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 279
@@ -4187,7 +4358,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 280
@@ -4212,7 +4384,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 281
@@ -4237,7 +4410,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 282
@@ -4262,7 +4436,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 283
@@ -4287,7 +4462,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 284
@@ -4312,7 +4488,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 285
@@ -4337,7 +4514,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 286
@@ -4362,7 +4540,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 287
@@ -4387,7 +4566,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 288
@@ -4412,7 +4592,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 289
@@ -4437,7 +4618,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 290
@@ -4462,7 +4644,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 291
@@ -4487,7 +4670,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 292
@@ -4512,7 +4696,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 293
@@ -4537,7 +4722,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 294
@@ -4562,7 +4748,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 295
@@ -4587,7 +4774,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 296
@@ -4612,7 +4800,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 297
@@ -4637,7 +4826,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 298
@@ -4662,7 +4852,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 299
@@ -4687,7 +4878,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "pont-de-claix-le-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 300
@@ -4712,7 +4904,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "pont-de-claix-le-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 301
@@ -4737,7 +4930,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 302
@@ -4762,7 +4956,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 303
@@ -4787,7 +4982,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "tronche-la-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 304
@@ -4812,7 +5008,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "tronche-la-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 305
@@ -4837,7 +5034,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 306
@@ -4862,7 +5060,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 307
@@ -4887,7 +5086,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 308
@@ -4912,7 +5112,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 309
@@ -4937,7 +5138,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "murianette-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 310
@@ -4962,7 +5164,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "murianette-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 311
@@ -4987,7 +5190,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-commiers-signalement-dechets-par-qualificati"
   },
   "model": "visualization.visualization",
   "pk": 312
@@ -5012,7 +5216,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-commiers-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 313
@@ -5037,7 +5242,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 314
@@ -5062,7 +5268,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 315
@@ -5087,7 +5294,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 316
@@ -5112,7 +5320,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 317
@@ -5137,7 +5346,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 318
@@ -5162,7 +5372,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 319
@@ -5187,7 +5398,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-signalement-dechets-par-qualificati"
   },
   "model": "visualization.visualization",
   "pk": 320
@@ -5212,7 +5424,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 321
@@ -5237,7 +5450,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 322
@@ -5262,7 +5476,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 323
@@ -5287,7 +5502,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 324
@@ -5312,7 +5528,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 325
@@ -5337,7 +5554,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-signalement-dechets-par-qualificat"
   },
   "model": "visualization.visualization",
   "pk": 326
@@ -5362,7 +5580,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 327
@@ -5387,7 +5606,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 328
@@ -5412,7 +5632,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 329
@@ -5437,7 +5658,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 330
@@ -5462,7 +5684,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 331
@@ -5487,7 +5710,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 332
@@ -5512,7 +5736,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 333
@@ -5537,7 +5762,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 334
@@ -5562,7 +5788,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 335
@@ -5587,7 +5814,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-signalement-dechets-par-qualific"
   },
   "model": "visualization.visualization",
   "pk": 336
@@ -5612,7 +5840,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 337
@@ -5637,7 +5866,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 338
@@ -5662,7 +5892,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 339
@@ -5687,7 +5918,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 340
@@ -5712,7 +5944,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 341
@@ -5737,7 +5970,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-signalement-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 342
@@ -5762,7 +5996,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-signalements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 343
@@ -5787,7 +6022,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 344
@@ -5812,7 +6048,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "montchaboud-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 345
@@ -5837,7 +6074,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 346
@@ -5862,7 +6100,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 347
@@ -5887,7 +6126,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 348
@@ -5912,7 +6152,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 349
@@ -5937,7 +6178,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 350
@@ -5962,7 +6204,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 351
@@ -5987,7 +6230,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 352
@@ -6012,7 +6256,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 353
@@ -6037,7 +6282,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 354
@@ -6062,7 +6308,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 355
@@ -6087,7 +6334,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 356
@@ -6112,7 +6360,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 357
@@ -6137,7 +6386,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 358
@@ -6162,7 +6412,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 359
@@ -6187,7 +6438,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 360
@@ -6212,7 +6464,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-renseignement-voirie-par-qualificat"
   },
   "model": "visualization.visualization",
   "pk": 361
@@ -6237,7 +6490,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 362
@@ -6262,7 +6516,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 363
@@ -6287,7 +6542,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 364
@@ -6312,7 +6568,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 365
@@ -6337,7 +6594,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 366
@@ -6362,7 +6620,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 367
@@ -6387,7 +6646,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 368
@@ -6412,7 +6672,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 369
@@ -6437,7 +6698,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 370
@@ -6462,7 +6724,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-renseignement-voirie-par-qualifi"
   },
   "model": "visualization.visualization",
   "pk": 371
@@ -6487,7 +6750,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 372
@@ -6512,7 +6776,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 373
@@ -6537,7 +6802,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 374
@@ -6562,7 +6828,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 375
@@ -6587,7 +6854,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 376
@@ -6612,7 +6880,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 377
@@ -6637,7 +6906,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 378
@@ -6662,7 +6932,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 379
@@ -6687,7 +6958,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontanil-cornillon-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 380
@@ -6712,7 +6984,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontanil-cornillon-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 381
@@ -6737,7 +7010,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 382
@@ -6762,7 +7036,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 383
@@ -6787,7 +7062,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 384
@@ -6812,7 +7088,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 385
@@ -6837,7 +7114,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 386
@@ -6862,7 +7140,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-renseignement-voirie-par-qualifica"
   },
   "model": "visualization.visualization",
   "pk": 387
@@ -6887,7 +7166,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 388
@@ -6912,7 +7192,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 389
@@ -6937,7 +7218,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 390
@@ -6962,7 +7244,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 391
@@ -6987,7 +7270,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 392
@@ -7012,7 +7296,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sarcenas-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 393
@@ -7037,7 +7322,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 394
@@ -7062,7 +7348,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 395
@@ -7087,7 +7374,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 396
@@ -7112,7 +7400,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-renseignement-voirie-par-qualifi"
   },
   "model": "visualization.visualization",
   "pk": 397
@@ -7137,7 +7426,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 398
@@ -7162,7 +7452,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-renseignement-voirie-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 399
@@ -7187,7 +7478,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 400
@@ -7212,7 +7504,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 401
@@ -7237,7 +7530,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "hors-gam-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 402
@@ -7262,7 +7556,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "hors-gam-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 403
@@ -7287,7 +7582,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 404
@@ -7312,7 +7608,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 405
@@ -7337,7 +7634,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 406
@@ -7362,7 +7660,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 407
@@ -7387,7 +7686,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 408
@@ -7412,7 +7712,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 409
@@ -7437,7 +7738,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 410
@@ -7462,7 +7764,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 411
@@ -7487,7 +7790,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 412
@@ -7512,7 +7816,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 413
@@ -7537,7 +7842,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 414
@@ -7558,7 +7864,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-gua-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 415
@@ -7583,7 +7890,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-fontanil-cornillon-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 416
@@ -7604,7 +7912,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-fontanil-cornillon-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 417
@@ -7629,7 +7938,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 418
@@ -7650,7 +7960,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "notre-dame-de-mesage-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 419
@@ -7675,7 +7986,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 420
@@ -7696,7 +8008,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-pont-de-claix-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 421
@@ -7721,7 +8034,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 422
@@ -7742,7 +8056,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 423
@@ -7767,7 +8082,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 424
@@ -7788,7 +8104,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "la-tronche-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 425
@@ -7813,7 +8130,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 426
@@ -7834,7 +8152,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "noyarey-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 427
@@ -7859,7 +8178,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "quaix-en-chartreuse-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 428
@@ -7880,7 +8200,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "quaix-en-chartreuse-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 429
@@ -7905,7 +8226,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 430
@@ -7926,7 +8248,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 431
@@ -7951,7 +8274,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 432
@@ -7972,7 +8296,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vif-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 433
@@ -7997,7 +8322,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 434
@@ -8018,7 +8344,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-georges-de-commiers-signalement-voirie-par-qualifica"
   },
   "model": "visualization.visualization",
   "pk": 435
@@ -8043,7 +8370,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 436
@@ -8064,7 +8392,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sechilienne-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 437
@@ -8089,7 +8418,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 438
@@ -8110,7 +8440,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-dheres-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 439
@@ -8135,7 +8466,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 440
@@ -8156,7 +8488,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-egreve-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 441
@@ -8181,7 +8514,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 442
@@ -8202,7 +8536,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "sassenage-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 443
@@ -8227,7 +8562,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 444
@@ -8248,7 +8584,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "le-sappey-en-chartreuse-signalement-voirie-par-qualificati"
   },
   "model": "visualization.visualization",
   "pk": 445
@@ -8273,7 +8610,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 446
@@ -8294,7 +8632,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "echirolles-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 447
@@ -8319,7 +8658,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 448
@@ -8340,7 +8680,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "herbeys-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 449
@@ -8365,7 +8706,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 450
@@ -8386,7 +8728,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "claix-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 451
@@ -8411,7 +8754,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 452
@@ -8432,7 +8776,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "meylan-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 453
@@ -8457,7 +8802,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 454
@@ -8478,7 +8824,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "corenc-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 455
@@ -8503,7 +8850,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 456
@@ -8524,7 +8872,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vizille-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 457
@@ -8549,7 +8898,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 458
@@ -8570,7 +8920,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-haut-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 459
@@ -8595,7 +8946,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 460
@@ -8616,7 +8968,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "domene-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 461
@@ -8641,7 +8994,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 462
@@ -8662,7 +9016,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-martin-le-vinoux-signalement-voirie-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 463
@@ -8687,7 +9042,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 464
@@ -8708,7 +9064,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "gieres-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 465
@@ -8733,7 +9090,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 466
@@ -8754,7 +9112,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 467
@@ -8779,7 +9138,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 468
@@ -8800,7 +9160,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 469
@@ -8825,7 +9186,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 470
@@ -8846,7 +9208,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "veurey-voroize-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 471
@@ -8871,7 +9234,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 472
@@ -8892,7 +9256,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "grenoble-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 473
@@ -8917,7 +9282,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 474
@@ -8938,7 +9304,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 475
@@ -8963,7 +9330,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 476
@@ -8984,7 +9352,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "fontaine-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 477
@@ -9009,7 +9378,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 478
@@ -9030,7 +9400,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "eybens-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 479
@@ -9055,7 +9426,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 480
@@ -9076,7 +9448,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssins-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 481
@@ -9101,7 +9474,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 482
@@ -9122,7 +9496,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "brie-et-angonnes-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 483
@@ -9147,7 +9522,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 484
@@ -9168,7 +9544,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "seyssinet-pariset-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 485
@@ -9193,7 +9570,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 486
@@ -9214,7 +9592,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "varces-allieres-et-risset-signalement-voirie-par-qualifica"
   },
   "model": "visualization.visualization",
   "pk": 487
@@ -9239,7 +9618,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 488
@@ -9260,7 +9640,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "jarrie-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 489
@@ -9285,7 +9666,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 490
@@ -9306,7 +9688,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champ-sur-drac-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 491
@@ -9328,7 +9711,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-delais-de-traitement-moyen-par-derni"
   },
   "model": "visualization.visualization",
   "pk": 492
@@ -9350,7 +9734,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "origine"
-    }
+    },
+    "slug": "renseignement-dechets-demandes-hors-delais-par-mois-et-par"
   },
   "model": "visualization.visualization",
   "pk": 493
@@ -9372,7 +9757,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-commune-gam-et-par-mo"
   },
   "model": "visualization.visualization",
   "pk": 494
@@ -9394,7 +9780,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-dernier-agent-traitant"
   },
   "model": "visualization.visualization",
   "pk": 495
@@ -9416,7 +9803,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-origine-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 496
@@ -9438,7 +9826,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-qualification-et-par-mo"
   },
   "model": "visualization.visualization",
   "pk": 497
@@ -9460,7 +9849,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "secteur"
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-qualification-et-par-mo-2"
   },
   "model": "visualization.visualization",
   "pk": 498
@@ -9482,7 +9872,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-dechets-demandes-par-statut-simplifie-et-par"
   },
   "model": "visualization.visualization",
   "pk": 499
@@ -9504,7 +9895,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-delais-de-traitement-moyen-par-dernie"
   },
   "model": "visualization.visualization",
   "pk": 500
@@ -9526,7 +9918,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "origine"
-    }
+    },
+    "slug": "renseignement-voirie-demandes-hors-delais-par-mois-et-par"
   },
   "model": "visualization.visualization",
   "pk": 501
@@ -9548,7 +9941,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-demandes-par-commune-gam-et-par-moi"
   },
   "model": "visualization.visualization",
   "pk": 502
@@ -9570,7 +9964,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-demandes-par-dernier-agent-traitant-e"
   },
   "model": "visualization.visualization",
   "pk": 503
@@ -9592,7 +9987,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-demandes-par-origine-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 504
@@ -9614,7 +10010,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-demandes-par-qualification-et-par-moi"
   },
   "model": "visualization.visualization",
   "pk": 505
@@ -9636,7 +10033,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "renseignement-voirie-demandes-par-statut-simplifie-et-par"
   },
   "model": "visualization.visualization",
   "pk": 506
@@ -9653,7 +10051,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-delais-de-traitement-moyen-par-dernier"
   },
   "model": "visualization.visualization",
   "pk": 507
@@ -9675,7 +10074,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "origine"
-    }
+    },
+    "slug": "signalement-dechets-demandes-hors-delais-par-mois-et-par-o"
   },
   "model": "visualization.visualization",
   "pk": 508
@@ -9697,7 +10097,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-commune-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 509
@@ -9719,7 +10120,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-decheterie-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 510
@@ -9741,7 +10143,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-dernier-agent-traitant-et"
   },
   "model": "visualization.visualization",
   "pk": 511
@@ -9763,7 +10166,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-origine-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 512
@@ -9785,7 +10189,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-qualification-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 513
@@ -9807,7 +10212,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "secteur"
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-qualification-et-par-mois-2"
   },
   "model": "visualization.visualization",
   "pk": 514
@@ -9829,7 +10235,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-dechets-demandes-par-statut-simplifie-et-par-m"
   },
   "model": "visualization.visualization",
   "pk": 515
@@ -9851,7 +10258,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-delais-de-traitement-moyen-par-dernier"
   },
   "model": "visualization.visualization",
   "pk": 516
@@ -9873,7 +10281,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": "origine"
-    }
+    },
+    "slug": "signalement-voirie-demandes-hors-delais-par-mois-et-par-or"
   },
   "model": "visualization.visualization",
   "pk": 517
@@ -9895,7 +10304,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-commune-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 518
@@ -9917,7 +10327,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-dernier-agent-traitant-et"
   },
   "model": "visualization.visualization",
   "pk": 519
@@ -9939,7 +10350,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-origine-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 520
@@ -9961,7 +10373,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-qualification-et-par-mois"
   },
   "model": "visualization.visualization",
   "pk": 521
@@ -9978,7 +10391,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-statut-simplifie-et-par-mo"
   },
   "model": "visualization.visualization",
   "pk": 522
@@ -10000,7 +10414,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "signalement-voirie-demandes-par-type-intervention-gru-et-p"
   },
   "model": "visualization.visualization",
   "pk": 523
@@ -10022,7 +10437,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "tous-formulaires-nombre-de-demandes-par-agent-backoffice"
   },
   "model": "visualization.visualization",
   "pk": 524
@@ -10047,7 +10463,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-renseignements-dechets-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 525
@@ -10072,7 +10489,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "venon-renseignements-dechets-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 526
@@ -10097,7 +10515,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 527
@@ -10122,7 +10541,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "bresson-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 528
@@ -10147,7 +10567,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 529
@@ -10172,7 +10593,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "champagnier-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 530
@@ -10197,7 +10619,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 531
@@ -10222,7 +10645,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "poisat-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 532
@@ -10247,7 +10671,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 533
@@ -10272,7 +10697,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "saint-paul-de-varces-renseignement-voirie-par-qualificatio"
   },
   "model": "visualization.visualization",
   "pk": 534
@@ -10297,7 +10723,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-renseignements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 535
@@ -10322,7 +10749,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "proveysieux-renseignement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 536
@@ -10347,7 +10775,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-signalements-voirie-par-statut"
   },
   "model": "visualization.visualization",
   "pk": 537
@@ -10368,7 +10797,8 @@
       "warehouse": "services_demarches_lametro_fr",
       "representation": "table",
       "loop": ""
-    }
+    },
+    "slug": "vaulnaveys-le-bas-signalement-voirie-par-qualification"
   },
   "model": "visualization.visualization",
   "pk": 538
diff --git a/tests/test_views.py b/tests/test_views.py
index 054347e..88263be 100644
--- a/tests/test_views.py
+++ b/tests/test_views.py
@@ -35,6 +35,15 @@ def test_superuser(app, admin):
     app.get('/', status=200)
 
 
+def test_visualizations_json_api(schema1, app, admin):
+    Visualization(name='test', parameters={}).save()
+    Visualization(name='test', parameters={}).save()
+    Visualization(name='test', parameters={}).save()
+    login(app, admin)
+    resp = app.get(reverse('visualizations-json'))
+    assert set([x['slug'] for x in resp.json]) == set(['test', 'test-2', 'test-3'])
+
+
 def test_visualization_json_api(schema1, app, admin):
     visualization = Visualization(
             name='test',
-- 
2.20.1

