Workspace - Рабочее пространство

class axipy.Workspace

Сохранение рабочего пространства в файл рабочего набора *.mws.

Рабочее пространство можно как сохранять в файл так и читать из него. При чтении из файла рабочего пространства посредством метода load_file() все источники данных (таблицы) открываются и добавляются в каталог axipy.DataManager, доступный через переменную axipy.data_manager. А окна с наполнением добавляются в менеджер окон axipy.ViewManager, доступный через переменную view_manager.

В случае записи текущего состояния в файл рабочего пространства последовательность обратная рассмотренной. Состояние каталога и менеджера окон записывается в рабочее пространство посредством метода save_file().

Пример чтения данных в рамках отдельного приложения:

from axipy import init_axioma, data_manager, view_manager, Workspace, open_file_dialog

# инициализация ядра
app = init_axioma()
print('Before: tables({}), views({})'.format(len(data_manager), len(view_manager)))
# Чтение рабочего набора
file_name = open_file_dialog("Рабочий набор (*.mws)")
Workspace().load_file(file_name)
print('After: tables({}), views({})'.format(len(data_manager), len(view_manager)))
# Если есть хотя бы одно окно с картой, показываем его
if len(view_manager.mapviews):
    mapview = view_manager.mapviews[0]
    mapview.show()
app.exec_()

# Результат:
# Before: tables(0), views(0)
# After: tables(5), views(3)  # В зависимости от рабочего набора, числа могут отличаться

Пример записи рабочего пространства:

from pathlib import Path

from PySide2.QtCore import QStandardPaths

from axipy import Workspace

path = Path(QStandardPaths.writableLocation(QStandardPaths.DocumentsLocation))
path = path / "ws_out.mws"
Workspace().save_file(path)
print("Файл рабочего набора сохранен.", path)

# Результат:
# Файл рабочего набора сохранен. C:\Users\User\Documents\ws_out.mws

Методы:

load_file(file_name[, suppress_non_exist])

Читает из файла рабочего пространства и заносит данные в текущее окружение.

load_string(workspace_str[, suppress_non_exist])

Читает из строки описание рабочего пространства и заносит данные в текущее окружение.

save_file(file_name[, overwrite])

Сохраняет текущее состояние в файл рабочего пространства.

save_string()

Сохраняет текущее состояние рабочего пространства в виде строки.

load_file(file_name: Union[str, Path], suppress_non_exist: bool = False)

Читает из файла рабочего пространства и заносит данные в текущее окружение.

Параметры:
  • file_name – Имя входного файла.

  • suppress_non_exist – Пропускать ненайденные файлы

load_string(workspace_str: str, suppress_non_exist: bool = False)

Читает из строки описание рабочего пространства и заносит данные в текущее окружение.

Параметры:
  • workspace_str – Строка с контентом рабочего пространства.

  • suppress_non_exist – Пропускать ненайденные файлы

save_file(file_name: Union[str, Path], overwrite: bool = False)

Сохраняет текущее состояние в файл рабочего пространства.

Параметры:
  • file_name – Имя выходного файла.

  • overwrite – Перезаписывать существующий файл. По умолчанию False.

save_string() str

Сохраняет текущее состояние рабочего пространства в виде строки.

Результат:

Строка с контентом рабочего пространства.