TableLayer

class axioma.render.TableLayer

Класс слоя, относящегося к таблице для просмотра и редактирования в нем данных.

Унаследован от: FeatureLayer

От него наследуются: CosmeticLayer

TableLayer(table, parent)

Конструктор

Параметры
  • table (Table) – Ссылка на таблицу - источник данных.

  • parent (QObject) – Родительский объект.

TableLayer(other)

Копирующий конструктор

Параметры

other (TableLayer) – Исходный слой, на базе которого создается слой.

deleteFeatures(features, description='')

Удаление существующих записей

Параметры
  • features (list [Feature]) – Список записей

  • description (str) – Текстовое описание действия

featuresById(idlist, attributes)

Возвращает записи по их идентификаторам в виде итератора

Параметры
  • idlist (list [ QVariant ]) – Список идентификаторов

  • attributes (list [ str ]) – Список атрибутов, которые должны быть представлены в результирующем курсоре

Результат

Результирующий итератор

Тип результата

Cursor

featuresById(idlist)

Возвращает записи по их идентификаторам в виде итератора

Параметры

idlist (list [ QVariant ]) – Список идентификаторов

Результат

Результирующий итератор

Тип результата

Cursor

featuresInRect(georect, attributes)

Возвращает записи, попадающие в определенный регион в виде итератора

Параметры
  • georect (GeoRect) – Область карты в координатах cs и сама КС.

  • attributes (list [ str ]) – Список атрибутов, которые должны быть представлены в результирующем курсоре

Результат

Результирующий итератор

Тип результата

Cursor

geometryAttribute()

Геометрический атрибут таблицы.

Результат

Возвращает описание геометрии слоя

Тип результата

GeometryAttributeDefinitionInterface

hasModified()

Присутствуют ли изменения в базовой таблице.

Результат

True, если да

Тип результата

bool

hasModified()

Проверяется, имеются ли изменения в таблице

Результат

True, если да. В противном случае False

Тип результата

bool

insertFeatures(features, description='')

Вставка новых записей

Параметры
  • features (list [Feature]) – Список записей

  • description (str) – Текстовое описание действия

isReadOnly()

Доступен ли слой только на чтение.

Результат

True, если слой доступен только на чтение, False, если слой доступен на чтение и запись

Тип результата

bool

sourceTable()

Исходная таблица.

Результат

Ссылка на таблицу

Тип результата

Table

table()

Таблица, на которой базируется слой.

Результат

Ссылка на таблицу

Тип результата

Table

tableSchema()

Схема (структура) таблицы слоя.

Результат

Возвращает структуру таблицы, на которой основан слой

Тип результата

TableSchema

updateFeatures(features, description='')

Обновление существующих записей

Параметры
  • features (list [Feature]) – Список записей

  • description (str) – Текстовое описание действия

Пример использования:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from axioma.core.dp import *
import axioma.gui

widgetService = axioma.app.gui.widgetManager
# Находим нужный нам слой по имени
for mapview in widgetService.allWidgets(axioma.gui.MapView.staticMetaObject):
    layer = mapview.rootLayerGroup().findChildByName("world")
# Проверяем возможность изменения слоя и сохранения в нем информации 
    if layer is not None and not layer.isReadOnly():
# Создаем новый объект для слоя
        new_feature =  Feature.createFeature(layer.tableSchema())
# Заполняем при необходимости данными (пример можно посмотреть в классе HistorySnapshot)
# Вставляем
        layer.insertFeatures([new_feature])
# Сохраняем
        layer.table().commit()