У меня есть настройка сигнала для события удаления объекта на слое:
self.layer.featureDeleted.connect(self.feature_deleted)
Когда я пытаюсь получить атрибут из удаленной функции в слоте, выдается ошибка StopIteration (то есть он не может получить функцию).
Я бы подумал, что я все еще смогу получить атрибуты из удаленного объекта до того, как изменения в уровне будут зафиксированы? В противном случае я не вижу, что использовать параметр FID.
def feature_deleted(self, fid):
feature = self.layer.getFeatures(QgsFeatureRequest().setFilterFid(int(fid))).next()
idx = self.layer.fieldNameIndex('my_attribute')
print feature.attributes()[idx]
Как я могу получить доступ к атрибутам удаленного объекта (до того, как изменения в уровне будут зафиксированы)?