| 123456789101112 |
- from PyQt5.QtXml import QDomDocument
- from qgis.core import QgsReadWriteContext
- def change_datasource(layer, target_uri):
- doc = QDomDocument("styles")
- element = doc.createElement("maplayer")
- layer.writeLayerXml(element, doc, QgsReadWriteContext())
- element.elementsByTagName("datasource").item(0).firstChild().setNodeValue(target_uri.uri())
- layer.readLayerXml(element, QgsReadWriteContext())
- # layer.setDataSource(new_datasource, new_name, 'ogr')
|