Filtrer les données par utilisateur¶
Sommaire
Principe¶
The filtering feature presented allows you to filter the data displayed on the map based on the logged in user. It is possible to filter only vector layers because Lizmap uses a column in the attribute table.
Filtering currently uses the ID of the user group connected. It’s active for all requests to QGIS server, and thus concerns:
- les images des couches vectorielles affichées sur la carte
- les popups. Lire Popup
- les listes de la fonction Localiser par couche. Voir La localisation par couche
- drop-down lists of Editing forms from Value relation. See Édition
- the attribute table display etc
Il y a deux sortes de filtrage :
- sur les attributs
- sur une relation spatiale
Filtrage par relation spatiale¶
Principe¶
Dans ce panneau, vous pouvez :
- configurer une couche polygonale comme une couche filtrante
- configurer des couches qui doivent être filtrées par la couche filtrante

Pré-requis¶
C’est une fonctionnalité dans Lizmap 3.5.
The Lizmap plugin in QGIS Server must be installed with at least Lizmap QGIS plugin 3.6. Otherwise, the filter won’t work and all data will be visible. See Lizmap QGIS Server plugin.
Configurer l’outil¶

Choisir la couche polygonale à utiliser pour filtrer
Choisir le champ dans cette couche qui possède les groupes Lizmap, séparés par virgule.
Pour ajouter une couche filtrée à cet outil :
- Cliquer sur le bouton
.
- Choisir la couche qu’il faut filtrer
- Choisir la clé primaire de la couche
- Choisir si le filtrage s’effectue sur l’affichage et l’édition ou alors seulement sur l’édition
- Choisir la relation spatiale soit intersection ou contient
- Cliquer sur le bouton
- Pour éditer une couche dans la table, sélectionner la et cliquer sur le bouton
ou alors double-cliquer sur la ligne.
- Pour supprimer une couche de la table, cliquez sur celle-ci puis sur le bouton
.
Pour votre information, les performances sont meilleures avec des couches PostgreSQL : soit filtrante ou filtrée ou alors même les deux.
Filtrage par attribut¶
Exemple¶
Un tutoriel vidéo est disponible à cette adresse : https://vimeo.com/83966790
Configurer l’outil¶
Pour utiliser l’outil de filtrage des données dans Lizmap Web Client, il faut :
- avoir accès à l’interface d’administration de Lizmap Web Client
Voici le détail des étapes pour configurer cette fonctionnalité :
Avertissement
Dans l’administration de Lizmap Web Client, dans les propriétés du répertoire, assurez-vous que anonymous
et d’autres groupes pertinents ne sont pas cochés pour Toujours voir les données de couches, même si filtrées par login. Voir Définir les droits pour chaque groupe.
Vérifiez l’ID de groupe ou l’ID utilisateur dans l’interface d’administration :
- To know group ID, you must go to the administration interface Groups of new users) : ID appears in parentheses after the name of each group (under the title
- Ou pour connaître l’identifiant de l’utilisateur, il suffit d’utiliser son login.
For all vector layers which is desired filter data, just add a text column that will hold the ID for each line who has the right to display this feature.
- Fill this column for each line of the attribute table with the ID (using the calculator, for example).
- Il est possible de définir
all
comme valeur pour certaines entités pour désactiver le filtre : Tous les utilisateurs verront les données de ces entités. - Si la valeur contenue dans cette colonne pour une ligne ne correspond pas à un des groupes d’utilisateurs, alors la donnée ne sera affichée pour aucun utilisateur.

Add the layer in the table Filter Data by User panel:
- Cliquer sur le bouton
.
- Sélectionnez la couche dans la liste déroulante
- Sélectionnez la champ avec l’ID
- Cochez la case si le champ contient un ID utilisateur, plutôt qu’un ID de groupe
- Cliquer sur le bouton
Pour éditer une couche dans la table, sélectionner la et cliquer sur le bouton
ou alors double-cliquer sur la ligne.
Pour supprimer une couche de la table, cliquez sur celle-ci puis sur le bouton
.
Avertissement
Désactivez le cache client et serveur pour toutes les couches filtrées. Sans cela, les données affichées ne seront pas mises à jour entre chaque connexion ou déconnexion de l’utilisateur !