Hi Luca,

thank you for your reply, which made me trying further, much appreciated. Your code works perfect with an existing feature (will use it some other place), however my new feature has no id assigned!

For those interested I elaborated the following:

newFeat = QgsFeature()
newGeom = # some magic :-)
newFeat.setGeometry( newGeom )

# important: create attributes at this point with null values...
for att in layer.pendingAllAttributesList():
    newFeat.addAttribute( att, QVariant() )

# ...in order to change attribute's value...
newFeat.changeAttribute( idx, 'string' )

# ...before adding feature to the layer
if layer.addFeatures( [ newFeat ] ):
    layer.setModified()

when a feature is added to the layer a copy of it is added, thus the feature is not accessible any more before the layer's changes are commited (because the new feature has no id)

Bernhard

[email protected] schrieb:
[email protected] scritti il 28/09/2010 08.21.31

myIdx = myLayer.fieldNameIndex( 'myfield' )
newFeature.changeAttribute( myIdx, newValue )
#does not change the field value to new value :-(

what is the second argument of changeAttribute supposed to be?

From my 'homemade' plugin:

      self.lay_stradearchi.changeAttributeValue (self.minFeature.id(),

self.lay_stradearchi.dataProvider().fieldNameIndex("FIELDNAME"),
                        self.dlgEdit.ui.newCode.text())

First argument is the FEATURE ID,
second argument is the index of the field,
third is the new value.

HTH.

_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer


________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail Server.
http://www.nod32.com




________ Information from NOD32 ________
This message was checked by NOD32 Antivirus System for Linux Mail Server.
http://www.nod32.com
_______________________________________________
Qgis-developer mailing list
[email protected]
http://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to