All the code, parameters and data structure information of the project is stored in the admin.sqlite SQLite database located in the project folder. This information we call the metadata.
The project metadata can be exported to a zip file in the Application Builder by clicking the Export button.
This file contains the following information:
The metadata file can be imported to another project.
The web application while importing the metadata performs the following operations:
The way the the project database is updated depends on the type of the project database.
Due to the fact that all items and fields of Jam.py projects have a unique ID attribute, Jam.py very accurately generates sql queries to modify the project database.
While generating sql queries the application currently compares only metadata in the current and imported project. The errors can occur when the application, for example, tries to adds to a table a field that doesn’t exist in the current project metadata but exists in the database table, you created this field outside of Application Builder. This situations can be corrected using Manual mode in Application Builder, see Database, and changing the database.
If you won’t change tables, field and indexes of production database, there will be no problems. Carry out development on the development project and then import its metadata into production.
Note
For the databases that do not support DDL statement rollback (MySql, Oracle) we recommend that you make a backup of the project database and admin.sqlite before performing the import.
Note
For SQLite database, Jam.py doesn’t support importing of metadata into an existing project (project with tables in the database). You can only import metadata into a new project.