Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !

10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …

Faire un don 

Retrouver nos membres bienfaiteurs

#1 Tue 12 July 2022 10:37

EliseWi
Participant occasionnel
Date d'inscription: 16 May 2022
Messages: 16

Rendre entité non éditable

Bonjour à tous,

Je travaille actuellement sur une base de données Postgres (en utilisant PgAmin 4). Savez-vous comment je peux rendre un champ non éditable ? J'ai créé des trigger pour que certains champs se remplissent automatiquement quand on crée une entité sur Qgis et j'aimerai que ces champs apparaissent grisés (non remplissables) lorsqu'une personne crée une nouvelle entité sur Qgis.

J'ai testé de décocher l'option 'editable' de ces champs directement dans Qgis mais quand je recharge la couche, cette option est à nouveau cochée.

Merci d'avance pour votre aide :)

Hors ligne

 

#2 Tue 12 July 2022 22:21

Mathieu Denat
Participant actif
Lieu: Montpellier
Date d'inscription: 5 May 2010
Messages: 110

Re: Rendre entité non éditable

Bonsoir,
Si la restriction de droit concerne bien un champ et pas une entité, je vois deux solutions possibles (sinon je ne sais pas si c'est possible):

1. Passer par Qgis, décocher la case éditable, enregistrer le style comme style par défaut dans la BDD source (et pas la BDD locale de Qgis). À chaque rouverture de la couche, c'est ce style qui se chargera. Ça me paraît pas foufou, car il est toujours possible de changer le style. Ou de changer de client pgsql et hop la colonne est à nouveau éditable.

2. Utiliser le système de gestion des droits de postgres. Pour ça il faut utiliser le couple GRANT/REVOKE.
Voir la doc ici.

Ex:

Code:

GRANT SELECT mon_champ ON ma_table TO mon_utilisateur

À +

Dernière modification par Mathieu Denat (Mon 18 July 2022 09:09)


Mathieu
C'est en forgeant qu'on devient forgeron

Hors ligne

 

#3 Wed 20 July 2022 11:21

EliseWi
Participant occasionnel
Date d'inscription: 16 May 2022
Messages: 16

Re: Rendre entité non éditable

Bonjour,

Merci beaucoup pour cette réponse ! Vous avez la réponse à toutes mes questions smile

Hors ligne

 

Pied de page des forums

Powered by FluxBB