prova la soluzione che ghi ha suggerito Martin a Alessandro Pasotti a Brighton morale aggiungere la chiamata:
<layer>.updateFields() dalla lista di qgis-developer (a cui ti consiglio di iscriverti se vuoi fare il porting e cercare li dentro) ---------- Forwarded message ---------- From: Alessandro Pasotti <[email protected]> Date: 7 October 2013 10:51 Subject: Re: [Qgis-developer] addAttribute to memory layer To: "Ing. Pierluigi De Rosa" <[email protected]> Cc: QGIS Developer Mailing List <[email protected]> 2013/10/7 Ing. Pierluigi De Rosa <[email protected]> > ** > Dear All, > I'm converting a plugin with new API but I still doen't figure out how to > add attribute to feature. > I know it's a stupid question but i think the cookbook is till not updated? > http://qgis.org/it/docs/pyqgis_developer_cookbook/vector.html#add-features > You can try this method: https://github.com/elpaso/qgis-geocoding/blob/master/GeoCoding.py#L289 2013/10/14 Geo DrinX <[email protected]> > > Non demoralizzarti. Anche noi stiamo migrando plugin grossi (mesi di >> lavoro anche per noi). >> Se puoi spiegarci meglio il problema, potremo aiutarti. >> > > Ti ringrazio. > Per farla breve, devo creare un memoryLayer e devo inserire un punto con > un record associato: > > > ------------------------------------------------------------------------------------------------------------ > geomType = "Point" + '?crs=proj4:' + > QgsProject.instance().readEntry("SpatialRefSys","/ProjectCRSProj4String")[0] > DronePlan = "DronePlan_" > memLay = QgsVectorLayer(geomType, DronePlan, 'memory') > > pr2 = memLay.dataProvider() > > res = pr2.addAttributes( [QgsField('Campo')]) > > fields = memLay.pendingFields() > f = QgsFeature(fields) > > f['Campo'] = 100 > > ------------------------------------------------------------------------------------------------------------ > > Ma la console risponde: > KeyError: 'Campo' > > ??? cosa vuole ? > > _______________________________________________ > [email protected] > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss > Questa e' una lista di discussione pubblica aperta a tutti. > I messaggi di questa lista non hanno relazione diretta con le posizioni > dell'Associazione GFOSS.it. > 666 iscritti al 22.7.2013 >
_______________________________________________ [email protected] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. I messaggi di questa lista non hanno relazione diretta con le posizioni dell'Associazione GFOSS.it. 666 iscritti al 22.7.2013
