Message posté par : PY Joubert
----------------------------------------
Bonjour,
Je bataille depuis plusieurs jours ... en vain.
J'ai une couche shape d'objets ponctuels saisis en PYQGIS.
Leurs attributs existent, mais ils sont vide (NULL)
Je voudrais maintenent les renseigner, pour cela, je fais:
-----------------
Code :
liste = [{'attribut': 'IDENT', 'valeur':
'CM_MDL_MC4_A_69152_99'}, {'attribut': 'INSEE', 'valeur':
'69152'}]
layer.startEditing()
for elem in liste:
idx = layer.dataProvider().fieldNameIndex(elem["attribut"])
if (idx > -1):
obj.setAttribute(idx,elem["valeur"])
layer.updateFeature(obj)
print(obj.attributes())
layer.commitChanges()
-----------------
Tout semble fonctionner, le print(obj.attributes()) me renvoie bien la liste des attributs
renseignés, mais lorsque je consulte mon objet, les attributs sont toujours à NULL
j'ai essayé d'utiliser par layer.dataProvider().changeAttributeValues, mais il
faut passer par l'ID de l'objet, et je na sais pas si cela fonctionne pour du
Shape (ll'id est tours du style -918000000000000
Bref, je suis coincé.
Si vous avez une idée, je suis preneur
Merci et bonne journée
PYJ
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=368253#p368253
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net