Open rldhont opened 3 years ago
@rldhont Pour cet issues Enregistrer les styles par défaut en base signifie de faire un algo qui fais comme si on sauvegarde le style en base de données via les propriétés de couche ?
oui
avec la méthode saveStyleToDatabase de la classe QgsVectoLayer ?
@rldhont Et il faut modifier les algo que tu as cité, c'est bien cela ?
Oui
Je travaille dessus
@rldhont la methode postProcessAlgorithm
dans l'algo Chargement des styles depuis le dossier resources, c'est une methode a définir comme processAlgorithm
?
Il faut regarder l'API https://qgis.org/pyqgis/3.10/core/QgsProcessingAlgorithm.html
@rldhont pour Enregistrer les styles par défaut en base, dans les algo d'installation et de maj on récupère ceux du dossier ressource ? Ou @Gustry si tu sais se qu'il faut faire ?
Algorithme Installation de la structure, ajouter un paramètre booléen Enregistrer les styles par défaut en base Algorithme Mise à jour de la structure, ajouter un paramètre booléen Enregistrer les styles par défaut en base (ceci écrasera les styles par défaut déjà en base)
Je pense que cela ne va pas être clé-en-main.
Car on est potentiellement sur une base sans la table layer_styles
et donc il faut prévoir ce cas la.
Restons proche du principe UNIX en laissant les algorithmes Create et Upgrade concernant le schéma des données. Et un autre pour les styles.
À la rigueur, depuis la nouvelle version du Chargement des couches depuis la base, ajouter une case à cocher Enregistrer les styles en bases SI Chargement des styles depuis le dossier resources ET Enregistrer les styles en bases alors on enregistre les QML dans la base. SI Enregistrer les styles en bases seul (pas de QML), alors on fait juste un warning disant qu'il n'y a pas d'action.
@Gustry je n'avais pas pensé à ces problèmes, mais ce bug n'est pas prioritaire donc il n'est pas nécessaire de tout faire.
On met en standby cette demande.
~Similaire, mais on ne doit pas être bloqué par le GUI de saveStyleToDatabase, c'est l'ajout du QML (ou du style déjà sur la couche QgsVectorLayer) lors de l'export COVADIS au format shapefile.~
postProcessAlgorithm
pour rafraîchir les couches du projet du context