Ich möchte ein Attribut einer Funktion aktualisieren. Ich weiß jedoch nicht, ob ich es mithilfe des Feature-Objekts aktualisieren soll. Ich muss den Datenprovider verwenden, um ihn zu aktualisieren.
layers = QgsMapLayerRegistry.instance().mapLayersByName('my_line')
layer = layers[0]
dp = layer.dataProvider()
it = dp.getFeatures()
for i in range(0, dp.featureCount()):
feat = it.next()
attrs = { 2 : 30 }
layer.dataProvider().changeAttributeValues({ feat.id() : attrs })
Kann ich den Wert eines Attributs mithilfe eines QgsFeature
Objekts ändern ?
Ist es außerdem möglich, eine Schleife mit einem Iteratorobjekt durchzuführen?
my_index = layer.fieldNameIndex("my_field_name")
, um den Index zu erhalten.