Skip to content

Backend of QGIS Model Baker Plugin. Library to create QGIS projects from database schemas or Interlis models.

License

Notifications You must be signed in to change notification settings

webrian/QgisModelBakerLibrary

 
 

Repository files navigation

logo

modelbaker - the library

The modelbaker library is a package containing two main areas:

  • Wrapper for ili2db iliwrapper
  • Modules to generate a QGIS project from it's database source and interacting with this source

This Library is the backend of the QGIS Plugin QGIS Model Baker.

Installation

pip install modelbaker

Structure

.
├── __init__.py
├── iliwrapper
│   ├── __init__.py
│   ├── globals.py
│   ├── ili2dbargs.py
│   ├── ili2dbconfig.py
│   ├── ili2dbtools.py
│   ├── ili2dbutils.py
│   ├── ilicache.py
│   ├── iliexecutable.py
│   ├── iliexporter.py
│   ├── iliimporter.py
│   ├── iliupdater.py
│   └── ilivalidator.py
├── dataobjects
│   ├── __init__.py
│   ├── fields.py
│   ├── form.py
│   ├── layers.py
│   ├── legend.py
│   ├── project.py
│   └── relations.py
├── dbconnector
│   ├── __init__.py
│   ├── config.py
│   ├── db_connector.py
│   ├── gpkg_connector.py
│   ├── mssql_connector.py
│   └── pg_connector.py
├── db_factory
│   ├── __init__.py
│   ├── db_command_config_manager.py
│   ├── db_factory.py
│   ├── db_simple_factory.py
│   ├── gpkg_command_config_manager.py
│   ├── gpkg_factory.py
│   ├── gpkg_layer_uri.py
│   ├── layer_uri.py
│   ├── mssql_command_config_manager.py
│   ├── mssql_factory.py
│   ├── mssql_layer_uri.py
│   ├── pg_command_config_manager.py
│   ├── pg_factory.py
│   └── pg_layer_uri.py
├── generator
│   ├── __init__.py
│   ├── config.py
│   ├── domain_relations_generator.py
│   └── generator.py
├── ilitoppingmaker
│   ├── __init__.py
│   ├── ili2dbsettings.py
│   ├── ilidata.py
│   ├── iliprojecttopping.py
│   ├── ilitarget.py
│   ├── metaconfig.py
└── utils
    ├── __init__.py
    ├── db_utils.py
    ├── globals.py
    ├── qgis_utils.py
    └── qt_utils.py

ili2db

In the current release we use ili2db version 4.10

Infos for Devs

Code style

Is enforced with pre-commit. To use, make:

pip install pre-commit
pre-commit install

And to run it over all the files (with infile changes):

pre-commit run --color=always --all-file

Needed packages from PyPI

Needed packages from PyPI are downloaded and packaged on deployment to the plugin's libs folder.

Run the script to download and unpack them or install them to your system.

Script:

./scripts/package_pip_packages.sh

About

Backend of QGIS Model Baker Plugin. Library to create QGIS projects from database schemas or Interlis models.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.7%
  • Other 0.3%